是否可以将变量从applescript传递到可执行的bash文件?如果是这样,我如何编写可执行的bash文件来接受参数?我将传递一个动态文件名,该文件名将附加到可执行文件中的文件路径中。
...了Applescript
global A
set A to "test123.pdf"
do shell script "/Users/matt/firstscript " & A
Bash文件......
#!/bin/bash
b64test=$( base64 /Users/matt/Documents/$1)
echo $b64test | pbcopy
echo $b64test > Users/matt/Base64
答案 0 :(得分:4)
你的Applescript需要做类似的事情:
global A
set A to "test123.pdf"
do shell script "/Users/matt/firstscript " & A
然后在您的脚本中,您可以参考parameters as $1
, $2
, etc, or $@
for all of them.
#!/bin/bash
b64_test=$( base64 /Users/matt/Documents/$1)
echo $b64_test | pbcopy
echo $b64_test > /Users/matt/Base64
请注意,命名bash变量test
并不是一个好主意,因为这是shell builtin命令的名称。随之而来的是各种各样的混乱。
或者,您应该能够在没有额外shell脚本的情况下执行此操作:
set A to quoted form of "/Users/matt/Documents/test123.pdf"
do shell script "base64 " & A & " | pbcopy"