例如,这是我的 bash 脚本
osascript -e 'tell app "Terminal"
do script "./process1"
end tell'
osascript -e 'tell app "Terminal"
do script "./process2"
end tell'
基本上,它将打开两个不同的终端窗口(在 mac 上)并执行定义的命令。我尝试在java中通过
process1 = Runtime.getRuntime().exec(new String[]{"process1"});
process2 = Runtime.getRuntime().exec(new String[]{"process2"});
问题是似乎只打开了一个终端(并且不可见 - 它在后台运行),然后执行了两个命令 process1 和 process2。但是由于进程 1 将使该终端保持忙碌,因此进程 2 无法运行。这就是为什么我想打开不同的终端来执行这些命令。