次のように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
動作していないように見えます(無視されているようです)。私は何か間違ったことをしているのですか、それともmanページを間違って解釈していますか?
男性からの関連する引用:
-cオプションが存在する場合、コマンドはstringから読み取られます。文字列の後に引数がある場合、$ 0から始まる位置パラメータに割り当てられます。
そして
A-オプションの終了を通知し、さらにオプション処理を無効にします。-の後の引数は、ファイル名と引数として扱われます。