防止 open -a Terminal.app 在 Mac OS X 上自动退出

防止 open -a Terminal.app 在 Mac OS X 上自动退出

在我的 Mac OSX 10.9 Mavericks 上,我编写了一个小型 bash 脚本来打开我正在编写的终端游戏应用程序的日志文件,以便我可以看到打印语句:

#!/bin/bash

printf '\e[3;0;0t'                                  # move
printf '\e[8;35;61'                                 # resize
tail -f ~/Library/Logs/Aaron/logfile--[default].txt # open log file

然后我从另一个类似的脚本打开它(它包含设置我的开发环境的其他各种调用,这里未显示):

#!/bin/bash

printf '\e[3;681;0t'                     # move
printf '\e[8;35;61t'                     # resize
open -a Terminal.app scripts/view_log.sh # open log file in new window
printf '\e[5t'                           # request focus

一切运行正常,只是当我取消执行 tail 时,它会自动退出终端。我注意到终端顶部有以下提示:

/Users/aaron/code/c/game2/scripts/view_log.sh ; exit;

如何防止终端添加此退出命令?有没有办法启动新的终端并将其保留下来以供以后用于其他命令?

(某人这里$SHELL建议在脚本末尾添加该行,但那是针对 Ubuntu 的 gnome-terminal 的)

答案1

简单的方法在脚本末尾生成一个新的 shell。只需将命令

bash

作为脚本的最后一行view_log.sh

它并不漂亮,因为您通常不想打开另一个子 shell,但它会保持原始窗口打开。

相关内容