当前代码片段的目的是在新的终端窗口中运行脚本并立即隐藏它。下面的代码最初似乎工作正常,但结果是,如果使用其可见属性操作窗口,它就会消失并且似乎没有执行。右键单击显示Terminal中的应用程序Dock,就像根本没有终端窗口一样。
tell application "Terminal"
-- New Terminal Window
set newTab to do script "caffeinate -u -t 900"
set caffeinateWindow to id of front window
tell window id caffeinateWindow
set index to 1
set visible to false
end tell
end tell
Run Code Online (Sandbox Code Playgroud)
而不是告诉终端使用 applesripts 内置的可能性:
do shell script "caffeinate -u -t 900"
Run Code Online (Sandbox Code Playgroud)
如果你想传递参数,那么这样做:
set param to "900"
do shell script "caffeinate -u -t " & param
Run Code Online (Sandbox Code Playgroud)
请注意,如果参数可能包含空格,您需要像这样转义/引用它:
set param to "900"
do shell script "caffeinate -u -t " & quoted form of param
Run Code Online (Sandbox Code Playgroud)
如果您仍然需要隐藏窗口,请像这样:
tell application "System events"
try
set visible of application process "Terminal" to false
end try
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3322 次 |
| 最近记录: |