我有一个使用
osascript
命令的shell脚本,内容如下:#!/usr/bin/osascript
on run argv
tell application "Terminal"
activate
do script "echo " & quoted form of (item 1 of argv) & " " & quoted form of (item 2 of argv)
end tell
end run
然而,当我运行代码时,它只限于打印前两个参数。
例如,当运行./test.sh foo bar buzz ...
时,我希望所有的参数都被显示。
我该如何修改上述代码以支持多个不限数量的参数?并且当我没有指定参数时,它也不会出错?
text item delimiters
。表达式argList as string
将列表连接成一个字符串,考虑了当前的text item delimiters
。如果它们没有设置为默认的空字符串列表,那么就会出现意外的行为。 - vadiantext item delimiters
,但是使用了一个我构建的带有空格的列表,然后展平该列表。在我看来,这是处理这种情况的更简单的编码方式,也是我提供它的原因。 - user3439894