Platypus错误设置变量

Platypus error setting variables

我有一个 shell 脚本,当 运行 来自终端 运行 时,它 运行 完美无缺

sh script.sh [name_of_the_pdf_.pdf]

脚本读取给定 .pdf 的文件名并根据文件名的第一个字符设置一些变量:

例如,以下变量从文件名中读取前两个字符并将它们存储为变量:

VAR_ENDPAGE=${1:0:2}

然后脚本 运行 是一个来自命令行的 java 程序,从这些存储的变量中传递参数:

java -jar jpdftweak.jar -i7-"${VAR_ENDPAGE[@]}"  -output ~/OUTPUTFILE.pdf

假设 [name_of_the_pdf.pdf]=2350.pdf 结果命令为:

java -jar jpdftweak.jar -i7-23  -output ~/OUTPUTFILE.pdf

问题出在我在 Platypus 中使用此脚本时。我创建了一个 Droplet,当我删除“2350.pdf”文件时,程序 运行 的脚本使用此文件作为 </code> 参数。一切似乎都很好,但似乎无法正确创建变量。比如上面的变量returns:<code>/U,那么命令就是:

java -jar jpdftweak.jar -i7-U/  -output ~/OUTPUTFILE.pdf

脚本完全一样。所以错误是在变量设置过程中。我尝试使用反引号,但一切似乎都有效……

这个U/从哪里来的?

嗯,有朋友指点一下……解决了。

问题是:在终端中,文件只有名称和扩展名,但启动 droplet 时,文件还将包含路径,位于 /Users/etc…脚本将加载前两个来自文件名的字符,但在 Droplet 中,文件名以路径开头,所以这给了我“/U”错误“/U”sers…等

脚本已更正,运行!