通过automator在shell脚本中进行日期格式化

时间:2012-09-24 09:38:32

标签: shell date automator launchd

我需要运行一个自动机应用程序中包含的shell脚本作为“运行shell脚本”操作,其中我生成一个具有此文件名的文件:

filename=$(date +%m-%d-%Y-%k-%M)'_test.png'

当我在终端中运行此行时,它可以工作。当我通过点击“播放”手动运行automator应用程序时,它可以工作。但是当我将automator应用程序添加到launchctl来安排它时,这不再起作用了,我得到的是:

2012年9月22日 -

而不是

09-22-2012-20-10_test.png

那么手动运行automator应用程序和launchctl作为启动守护程序之间的区别在哪里?我如何更改该行以使其在两种情况下都能正常工作?非常奇怪的是,通过launchctl进行的格式化适用于日期,但是时间值有问题。

非常感谢!

1 个答案:

答案 0 :(得分:1)

您不必在格式字符串中只有日期/时间说明符。

我无法使用automator来测试您的案例,但请尝试

filename=$(date +%m-%d-%Y-%k-%M_test.png)

我打赌你正在使用的单引号会导致问题。

IHTH。