假设我想像这样通过Bash运行命令:
/bin/bash -c "ls -l"
根据Bash的手册页,我也可以这样运行它:
# don't process arguments after this one
# | pass all unprocessed arguments to command
# | |
# V V
/bin/bash -c ls -- -l
除非它似乎不起作用(它似乎被忽略了)。我是在做错什么,还是我在解释手册页时出错?
男人的相关语录:
如果存在-c选项,则从字符串读取命令。如果字符串后面有参数,则将它们分配给位置参数,从$ 0开始。
和
A-表示选项结束,并禁用进一步的选项处理。-后面的任何参数均被视为文件名和参数。