Linuxシステムでは、rm * -rf
のようなコマンドをシェルに入力すると、*
と-rf
の順番は関係ありません。私のシェルはそれを同じように解釈します。さて、私のMac上で私が入力したときにrm -rf *
すべてが正常に動作しますが、私はrm * -rf
を行う場合は、エラーは、私はMacOSの両方の魚やbashのシェルとLinux上でそれを試してみましたrm: -rf: No such file or directory
macosコマンドラインパラメータが最後に動作しない
を示しています。同じ問題。
macOS上のコマンドインタープリタが、コマンドの最後にある-rf
がコマンドのパラメータとして解釈されないと思われる理由が分かりますか?
異なるコマンドインタープリタ(シェル)ではありません。これは 'rm'コマンドです。伝統的に、Unixのコマンドでは、すべてのオプションがオプションではない引数の前に来る必要があります。 GNUユーティリティとGNUスタイルで書かれたものは、オプションと非オプションの引数を混在させることができます。 OSXはBSDの派生物であり、より伝統的な振る舞いを示しています。 –