我有一个要在文件夹上运行的自动化脚本。我希望脚本将文件夹中的每个文件都包含在内并在其上运行我的shell命令。 Automator设置为将输入传递给stdin,但我认为下面我没有正确使用stdin,请您能帮忙吗?
for f in "$@"
do
java -Xmx1000m -jar /Users/myprog/myprog.jar $f
done
最佳答案
特殊变量$@
表示提供给脚本的所有命令行参数。for
循环逐步执行每个循环,并每次执行jar文件。您可以将脚本缩短为:
for f
do
java -Xmx1000m -jar /Users/myprog/myprog.jar "$f"
done
因为
for
的默认行为是使用$@
。如果参数中有空格,则应在Java命令的末尾加上$ f引号。