使用applescript隐藏终端窗口

使用applescript隐藏终端窗口,applescript,Applescript,当前代码段的目的是在新的终端窗口中运行脚本并立即隐藏它。下面的代码一开始似乎工作正常,但结果是,如果使用其visible属性操纵窗口,它就会消失,并且似乎无法执行。右键单击

当前代码段的目的是在新的终端窗口中运行脚本并立即隐藏它。下面的代码一开始似乎工作正常,但结果是,如果使用其visible属性操纵窗口,它就会消失,并且似乎无法执行。右键单击
内的
终端
应用程序,显示完全没有终端窗口

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

不要告诉终端使用应用程序脚本内置的可能性:

do shell script "caffeinate -u -t 900"
如果要传递参数,请执行以下操作:

set param to "900"
do shell script "caffeinate -u -t " & param
set param to "900"
do shell script "caffeinate -u -t " & quoted form of param
注意:如果参数可能包含空格,则需要按如下方式转义/引用:

set param to "900"
do shell script "caffeinate -u -t " & param
set param to "900"
do shell script "caffeinate -u -t " & quoted form of param
如果仍需要隐藏窗口,请按如下方式操作:

tell application "System events"
    try 
        set visible of application process  "Terminal" to false
    end try
end

不要告诉终端使用应用程序脚本内置的可能性:

do shell script "caffeinate -u -t 900"
如果要传递参数,请执行以下操作:

set param to "900"
do shell script "caffeinate -u -t " & param
set param to "900"
do shell script "caffeinate -u -t " & quoted form of param
注意:如果参数可能包含空格,则需要按如下方式转义/引用:

set param to "900"
do shell script "caffeinate -u -t " & param
set param to "900"
do shell script "caffeinate -u -t " & quoted form of param
如果仍需要隐藏窗口,请按如下方式操作:

tell application "System events"
    try 
        set visible of application process  "Terminal" to false
    end try
end

谢谢你的建议,Pat_Morita我会考虑的。有一件事我没有提到,有时我使用活动终端窗口,只想隐藏执行coffeinate的特定窗口:)我更改了一段错误的代码。如果答案对你来说是正确的,请接受它,这样其他有同样问题的人也可以找到解决办法。很高兴我能帮上忙实际上几分钟后我意识到你的第一个使用内置选项的建议完全符合逻辑,因为它不会打开终端窗口,所以没有必要再麻烦了:再次感谢你,伙计。希望其他人也会觉得这很有用:)谢谢你的建议,Pat_Morita,我会考虑的。有一件事我没有提到,有时我使用活动终端窗口,只想隐藏执行coffeinate的特定窗口:)我更改了一段错误的代码。如果答案对你来说是正确的,请接受它,这样其他有同样问题的人也可以找到解决办法。很高兴我能帮上忙实际上几分钟后我意识到你的第一个使用内置选项的建议完全符合逻辑,因为它不会打开终端窗口,所以没有必要再麻烦了:再次感谢你,伙计。希望其他人也会觉得这很有用:)