我试图使用这里所示的iTerm示例来回答另一个问题。
基本上,我有一个包含大约20个文本文件的列表,这些文件表示来自不同服务器的报告。我希望在它们所在的目录中读取每个文件名,并从中构建一个存在于commands目录中的shell命令,然后打开一个新的iTerm窗口,再执行我构建的shell脚本。
我不想在一个窗口中一个接一个地运行它们,我希望它们各自在自己的窗口中执行以加快处理速度。
这是我的代码,我可以很愉快地构建出shell脚本名称并将其存储在foo中,而且似乎我也可以顺利地打开新的iTerm窗口,但是我在让它接受$foo作为要运行的命令方面遇到了麻烦。
我收到的错误是:deltrash.sh: 第22行:语法错误:意外的文件结尾。
有人能给我一个指针吗?
基本上,我有一个包含大约20个文本文件的列表,这些文件表示来自不同服务器的报告。我希望在它们所在的目录中读取每个文件名,并从中构建一个存在于commands目录中的shell命令,然后打开一个新的iTerm窗口,再执行我构建的shell脚本。
我不想在一个窗口中一个接一个地运行它们,我希望它们各自在自己的窗口中执行以加快处理速度。
这是我的代码,我可以很愉快地构建出shell脚本名称并将其存储在foo中,而且似乎我也可以顺利地打开新的iTerm窗口,但是我在让它接受$foo作为要运行的命令方面遇到了麻烦。
#!/bin/sh
FILES=/Volumes/reporter/uplod/lists/*
# eg each filename is of the type <path>/X07QXL29.txt
for f in $FILES
do
foo="del"
foo+=${f:32:1}
foo+=${f:36:2}
foo+=".sh"
# foo is now for example del729.sh using the above comment as the filename
# foo is the command I will want to run in its own new window
osascript <<END
tell application "iTerm"
tell the first terminal
tell myterm
launch session "Default Session"
tell the last session
write text "$foo"
write text "\n"
end tell
end tell
end tell
END
done
我收到的错误是:deltrash.sh: 第22行:语法错误:意外的文件结尾。
有人能给我一个指针吗?
GNU Parallel
的-k
开关将它们全部并行运行,以保持输出分离和有序。 - Mark Setchell