tr コマンドがファイルから読み取らないのはなぜですか?

tr コマンドがファイルから読み取らないのはなぜですか?

私は Unix の本、マニュアル、Wikipedia のページを調べましたtrが、ファイルからではなく厳密に標準入力からのみ読み取るように設計/実装された理由を見つけることができませんでした。たとえば、、、などのツールはwcすべてgrepsed提供されている場合はファイルから、または標準入力から入力を読み取ります。このようにawk設計するやむを得ない理由はありましたか?tr

答え1

UNIX哲学は「小さくて鋭いツール」を提唱しているので、答えは、ファイルからの読み取りは UNIX の哲学に反して肥大化するということです。、、、などがファイルから読み取る理由についてはwcgrepそれらsedawkすべて、複数の入力または入力選択を必要とする機能、またはファイルへの直接アクセスを必要とする機能を持っているためです。trこれらの理由から は一般的に使用されていないため、ニーズを満たすには次のいずれかの形式を使用する必要があります。

tr ... < file
tr ... < file > file2
tr ... < file | sponge file

関連情報