终端准备/完成时的通知 - Applescript

时间:2013-04-29 06:10:31

标签: macos notifications terminal applescript

有没有办法在终端完成命令时收到通知?

- >我运行另一个脚本(不是我的!),当这个脚本完成后下载数据我想退出终端并用这些数据做其他事情。

修改
我可能没有正确地问...

示例:


tell application "Terminal"
   keystroke "php downloadscript.php"
   keystroke return
end tell

if (downloadFinished) -- do stuff else -- wait till finished

编辑2: 真棒!谢谢! 这样工作:


tell application "Terminal"
    set frontWindow to window 1
    repeat until busy of frontWindow is false
        delay 1
    end repeat
    #display dialog "finished"
end tell
问候 hatschii

1 个答案:

答案 0 :(得分:6)

当标签打印\ a并且标签未聚焦或终端不在最前面时,终端的Dock图标开始弹跳:

sleep 5; printf '\a'

您还可以运行afplay /System/Library/Sounds/Blow.aiff之类的内容。或者使用terminal-notifier:

sudo gem install terminal-notifier
terminal-notifier -message ''

您可以通过检查选项卡的busy属性来等待程序运行完毕:

tell application "Terminal"
    set w to do script "sleep 5"
    repeat
        delay 1
        if not busy of w then exit repeat
    end repeat
end tell