shell脚本中的Automator变量
是否可以将 Automator 变量传递到 shell 脚本中?
Is it possible to pass an Automator variable into a shell script?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
是否可以将 Automator 变量传递到 shell 脚本中?
Is it possible to pass an Automator variable into a shell script?
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(2)
补充 @Ned Deily 的答案:(
从 OS X 10.9.2 开始编写,从 OSX 10.10 开始仍然有效
) 通常不需要在 Automator 中创建和使用显式变量(使用
设置变量值
和获取变量值
操作)。上一个操作的输出会自动传递给
Run Shell Script
操作。不过,默认情况下,数据是通过 stdin 传递的。
如果您希望它作为参数传递(
$1
、$2
,... - 也可以通过$@
作为数组访问code>) 相反,从右侧的传递输入:
列表中选择作为参数
,如下所示:在此示例中,选定的
Finder
项目将作为 POSIX 样式路径 传递到 shell 脚本。在循环中使用
read -r
)也可以:也就是说,让 shell 脚本通过 stdin 处理数据( sstatic.net/8oDWP.png" alt="在此处输入图像描述">
To complement @Ned Deily's answer:
(Written as of OS X 10.9.2, still current as of OSX 10.10)
It is often not necessary to create and use explicit variables in Automator (using the
Set Value of Variable
andGet Value of Variable
actions).The previous action's output is automatically passed to a
Run Shell Script
action.By default, the data is passed via stdin, however.
If you want it passed as arguments (
$1
,$2
, ... - also accessible as an array via$@
) instead, selectas arguments
from thePass input:
list on the right, as illustrated here:In this example, the selected
Finder
items are passed as POSIX-style paths to the shell script.That said, having a shell script process the data via stdin (using
read -r
in a loop) works, too:filename
变量中filename
变量rename_to
中rename_to
值,$2 –文件名
值filename
variablefilename
variablerename_to
rename_to
value, $2 –filename
value