我创建了一个Automator工作流程,当将其添加到Desktop文件夹时,将iOS Simulator屏幕截图重命名。但是,要使工作流程正常工作,我需要自己手动运行它。是否有一种方法可以使工作流连续监视Desktop文件夹,并在将其添加为后台服务后重命名屏幕快照?]
这是我创建的工作流程:
您需要做的是将工作流转换为文件夹操作。在自动化器中,转到“文件”菜单,选择“转换为...”,然后选择“文件夹操作”。在窗口的顶部,现在将显示一个下拉菜单,显示“选择文件夹”。将其下拉,选择“其他”,然后导航到桌面并选择它。保存此内容,您的工作流将应用于添加到桌面的所有项目。
如果要编辑或删除文件夹操作,则自动工作流存储在〜/ Library / Workflows / Applications / Folder Actions /中。
我要做的方法是使用一个名为launchd
的应用程序打开您所需的频率(例如每隔几秒钟)的自动化脚本。 This网站介绍了如何进行设置。基本上,您必须首先将自动程序脚本作为应用程序保存到某个文件夹(例如文档),然后编写一个简短的xml脚本,该脚本告诉launchd
打开哪个文件以及执行频率。
下面是一个示例脚本:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple Computer//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.NAME.test</string>
<key>Program</key>
<string>/Users/USERNAME/Documents/test.app/Contents/MacOS/Application Stub</string>
<key>StartInterval</key>
<integer>5</integer>
<key>RunAtLoad</key>
<true/>
</dict>
</plist>
打开一个新的“纯文本” TextEdit文档并粘贴在上面。将标签(com.NAME.test
)替换为所需的任何内容。我通常只在其中输入我的名字,然后是脚本的名字。接下来,将Program
下的行更改为之前保存的“ .app”文件的位置,并记住将USERNAME
更改为用户名。请记住,/Contents/MacOS/Application Stub
必须紧接在“ .app”部分之后,以便脚本将启动您的应用程序。然后将StartInterval
下的行更改为希望脚本再次运行之前要等待的秒数。
完成脚本编辑后,将其保存到“ /Users/USERNAME/Library/LaunchAgents/com.NAME.test.plist”,当然,将USERNAME
更改为用户名,将com.NAME.test
更改为使用的标签在xml脚本中。如果询问是否要使用“ .plist”扩展名保存,请选择“是”。保存文件后,打开终端(/Applications/Utilities/Terminal.app)并键入命令launchctl load /Users/USERNAME/Library/LaunchAgents/com.NAME.test.plist
,将文件名更改为“ .plist”文件的文件路径。使用unload
而不是load
停止脚本的运行。
对我来说,每次脚本运行时,菜单栏中都会一直出现一个齿轮图标,因此我在this和this网站上发现可以通过在Automator的最顶部添加“ Run Shell Script”来停止它。脚本,然后在框中输入killall ScriptMonitor || true
。