lsが冗長スイッチを許可するのはなぜですか?

lsが冗長スイッチを許可するのはなぜですか?

ls -l気になります。との違いがありますかls -lllllllllllllllllllllllllllll

出力は同じようですが、lsなぜ冗長スイッチが許可されるのか混乱しています。これはほとんどのコマンドで標準的な慣行ですか?

ベストアンサー1

なぜなら、それが正しいことだからです。次のようなスクリプトがあるとしましょう。

ls $LS_OPTIONS -l "$dir"

$LS_OPTIONSこのコマンドがエラーを生成することは直観に反して迷惑なこと-lであり、これを防ぐためにスクリプトに追加のロジックを追加する必要があります。

-l最良の例ではないかもしれませんが、この概念が一般的にどのように適用されるかについてのアイデアを得ることを願っています。より良い例はコンパイラオプションです。これは、$CFLAGS特定のコンパイラ呼び出しで明示的なオプションを繰り返すことが可能であるためです。

おすすめ記事