我制作了一个脚本,每天获取本地时间,然后通过桌面上的代码为我指定的文件夹制作别名。一开始,它会询问今天是什么日子(通过列表)。它不起作用,因为即使我使用 launchd 每 5 分钟运行一次,它也会要求我提供列表。有没有办法每天存储变量,然后让它全天完成其余的工作?
我实际上已经结合了AppleScript和Automator来使其正常运行,所以我需要使Automator运行而不是AppleScript。
我的 PLIST 代码
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>RunAtLoad</key>
<true/>
<key>KeepAlive</key>
<true/>
<key>Label</key>
<string>wallpaper.restart</string>
<key>ProgramArguments</key>
<array>
<string>PATH:TO:FILE</string>
</array>
<key>StartCalendarInterval</key>
<dict>
<key>Hour</key>
<integer>1</integer>
</dict>
</dict>
</plist>
我将不胜感激任何指导我开始,或任何可以帮助我的东西。
谢谢
要以某种间隔运行脚本,您可以使用如下所示的 .plist...
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>Label</key>
<string>com.mycompany.myScript</string>
<key>Program</key>
<string>/Applications/myScript/myScript.app/Contents/MacOS/applet</string>
<key>LowPriorityIO</key>
<true/>
<key>Nice</key>
<integer>1</integer>
<key>StartInterval</key>
<integer>600</integer>
</dict>
</plist>
将 600 更改为您希望它运行的任何秒数,例如每 5 分钟 300
。要将数据写入 .plist 文件以便您可以随时访问它,您可以使用这样的东西......
do shell script "defaults write com.mycompany.myApp MyInfo '" & theInfo & "'"
然后阅读信息,您将使用这样的代码...
set myPref to do shell script "defaults read com.mycompany.myApp MyInfo"
最后,我不确定您是否需要一个"列表",您可以使用类似于此的脚本获取日期......
do shell script "date "+%Y-%m-%d""
我在此示例中选择的格式是 2016-06-01,但您可以通过更改 date 命令后的字符串将格式信息更改为所需的任何格式。有关详细信息,请参阅手册页以获取日期或查看此处。