【发布时间】:2016-10-07 04:32:51
【问题描述】:
我正在尝试更好地理解 bash 的 -c 选项。手册页说:
-c:如果存在 -c 选项,则从第一个非选项参数 command_string 中读取命令。如果 command_string 后面有参数,则将它们分配给位置参数,从 $0 开始。
我无法理解这意味着什么。
如果我在使用和不使用 bash -c 的情况下执行以下命令,我会得到相同的结果(来自http://www.tldp.org/LDP/abs/html/abs-guide.html 的示例):
$ set w x y z; IFS=":-;"; echo "$*"
w:x:y:z
$ bash -c 'set w x y z; IFS=":-;"; echo "$*"'
w:x:y:z
【问题讨论】:
-
你期望什么输出?
-
顺便说一句,ABS 不是一个好的参考选择——它以展示不良做法而闻名(用the irc.freenode.org #bash IRC bot 的话来说,它会“教你写错误,而不是脚本”)。考虑the bash-hackers wiki 或the Wooledge BashGuide。
标签: bash