当我完成终端时,我想退出它.现在,我有三个选择:
基拉尔终点站.它将结束这个过程,但却是突然的.我不认为这是最好的主意.
致电退出.我已经更改了设置,因此退出关闭终端.该应用程序仍然在Dock中显示为打开,并且不执行我想要它做的事情.
右键单击>退出.但是,这不是退出它的终端命令.
那么现在,我应该退出并关闭终端的方式是什么?我听说过osascript,但我不太确定.我想退出并关闭,以便终端不再作为窗口和进程打开.
Duk*_*uke 174
在Terminal.app中
首选项>配置文件>(选择配置文件)> Shell.
on'当shell退出'选择'关闭窗口'
Ame*_*icA 11
实际上,你应该在你的终端上设置一个配置,当你的终端按下⌘+ ,然后你会看到下面的屏幕:
然后按shell选项卡,您将看到以下屏幕:
现在选择Close if the shell exited cleanly的外壳退出时.
通过上面的配置每次使用exit命令终端将关闭但不会退出.
GOT*_*O 0 10
在终端窗口中,您可以键入:
kill -9 $(ps -p $PPID -o ppid=)
Run Code Online (Sandbox Code Playgroud)
这将终止终端应用程序进程,该进程是当前进程的父进程的父进程,如kill命令所示.
要从正在运行的脚本中关闭终端窗口,您需要在流程层次结构中再增加一个级别,如下所示:
kill -9 $(ps -p $(ps -p $PPID -o ppid=) -o ppid=)
Run Code Online (Sandbox Code Playgroud)
您可以通过以下osascript命令使用AppleScript :
osascript -e 'tell application "Terminal" to quit'
Run Code Online (Sandbox Code Playgroud)
您还可以使用这个复杂的命令,它不会触发有关终止其自身进程的警告:
osascript -e "do shell script \"osascript -e \\\"tell application \\\\\\\"Terminal\\\\\\\" to quit\\\" &> /dev/null &\""; exit
quit该命令相当长,因此您可以在 bash 配置文件中定义一个别名(例如):
alias quit='osascript -e "do shell script \"osascript -e \\\"tell application \\\\\\\"Terminal\\\\\\\" to quit\\\" &> /dev/null &\""; exit'
这将允许您简单地输入quit终端,而无需摆弄任何其他设置。
小智 5
osascript -e "tell application \"System Events\" to keystroke \"w\" using command down"
这模拟了CMD+ w按键。
如果您希望终端完全退出,则可以使用:
osascript -e "tell application \"System Events\" to keystroke \"q\" using command down"
这不会产生任何错误,并且可以使终端干净地停止。
| 归档时间: |
|
| 查看次数: |
168143 次 |
| 最近记录: |