我正在尝试在MAC终端中运行shell脚本。我想打开一个新的终端窗口,它将执行与正在运行的程序分开的脚本。在Fedora中,有一个gnome-terminal命令可以让我在另一个终端shell中执行脚本。
有没有人知道MAX OSX上的等效内容以及如何使用它?
例如说我有一个脚本crazy.sh,我想从正在执行的程序中调用它,但是在与当前正在执行程序的终端不同的终端中。
答案 0 :(得分:4)
我喜欢DigitalTrauma的答案,但我发现使用它,效果更好
open -a Terminal.app crazy.sh
感谢您的回答。
答案 1 :(得分:2)
一种方法是使用xterm而不是终端窗口:
xterm -e crazy.sh
如果您希望在脚本完成后xterm保持打开状态,请使用x -hold
选项。
但如果你真的需要在终端中这样做,你可以使用applescript:
tell application "Terminal"
activate
tell application "System Events" to keystroke "n" using command down
repeat while contents of selected tab of window 1 starts with linefeed
delay 0.1
end repeat
do script "crazy.sh" in window 1 -- make sure the path to your script is right
end tell
(相信这里的答案https://superuser.com/questions/466619/open-new-terminal-tab-and-execute-script)