24f*_*fos 5 applescript action automator
我有一个Automator工作流来ping服务器,并下载我经常使用的计划的最新副本.然后将此计划复制到我的保管箱,以便我可以在手机上查看.在工作流程下载最新计划之前,它会从dropbox中删除旧计划.
除非我没有活动的互联网连接,否则这种方法很有效.当我没有活动的互联网连接时,工作流程仍然会打开Dropbox,删除旧计划,并尝试下载最新的计划.因为没有连接,所以不会下载任何内容.然后,如果我的连接变为活动状态,则空的保管箱将同步,并且计划将从我的手机中删除.
我正在尝试添加几行AppleScript代码来ping服务器以查看我是否有活动连接.如果我不这样做,那么等待大约5秒钟再次ping.我希望有5次ping尝试,此时如果我仍然没有活动连接,那么我想完全退出.
我对applecript很新,所以我对如何处理来自命令的错误感兴趣,在这种情况下,ping.如果命令"ping -o www.apple.com"失败,请等待5秒钟并重试ping.如果5次尝试失败,则完全退出.
也许是这样的?
repeat with i from 1 to 5
try
do shell script "ping -o www.apple.com"
exit repeat
on error
delay 5
beep
if i = 5 then error number -128
end try
end repeat
say "Connected"
Run Code Online (Sandbox Code Playgroud)
小智 5
如果域不可用,上述脚本会导致 automator 的 applescript 挂起。如果添加 -t X,其中 X 是秒数,则它在 AppleScript 编辑器中工作正常,ping 应该超时,否则它也会无限期挂起。
repeat with i from 1 to 2
try
do shell script "ping -o -t 2 www.googleasda.com"
exit repeat
on error
say "Couldn't connect"
delay 2
say "Error after delay 5"
beep
if i = 2 then error number -128
end try
end repeat
say "Connected"
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8740 次 |
| 最近记录: |