如何在 automator shell 脚本中使用带空格的路径?

How to use paths with spaces in automator shell script?

我有一个 Automator 工作流程,它应该将所选文件的创建日期设置为我想要输入的日期。不幸的是我的路径有空格。因此它不起作用。 我尝试了几种变体,例如:

SetFile -d \" 12:00:00\" "$@2"
SetFile -d \" 12:00:00\" \"$@2\"
SetFile -d \" 12:00:00\" '$@2'
SetFile -d \" 12:00:00\" \'$@2\'

路径如下: /Users/simon/Documents/Steuern/Steuern 2021/Scan_000775.pdf

我用的shell是安装了oh-my-zsh的ZSH

这是我的工作流程:

谁能告诉我如何编写 shell 脚本来使用带空格的路径名? 那肯定很不错。谢谢。

如果我没理解错的话,你想要:

SetFile -d " 12:00:00" "${@:2}"

解释:转义引号可以防止它们像引号一样(将它们变成普通字符);在这种情况下,您希望它们起到引号的作用,所以您不应该对它们进行转义。此外,"$@2" 不获取从 </code> 开始的参数,它获取 <em> 所有 </em> 个参数,并在最后一个参数的末尾添加一个“2”一。如果您想要除第一个参数之外的所有参数,请改用 <code>"${@:2}"