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


11

私はUnixの本、男、ウィキペディアのページをtr調べましたが、ファイルからではなく厳密に標準入力からしか読み取れないように設計/実装された理由を見つけることができませんでした。など、例えば、ツールwcgrepsed、およびawk提供されている場合、または標準入力からすべては喜んで、ファイルからの入力を読み込みます。trこの方法で設計する理由はありますか?


2
それはそのようにコード化されておらず、人生は続いています...厳しいメモリ制限のあるマシンで別の時が来ているためであるに違いないと思います、そしてtrは古いです。Unixユーティリティも複数の人々によって設計されており、ユーティリティ間で機能の不整合や重複がいくつかあります。
Rui F Ribeiro

3
指摘しておきますが、この質問は主に意見に基づくものとしてフラグが付けられていますが、私見では閉じるべきではありません。非常に有効な答えが得られるような方法で物事が実装される理由について、これと同様の質問がありました。たとえばunix.stackexchange.com/questions/6804/what-does-dd-stand-forまたはunix.stackexchange.com/questions/93773/why-is-sort-o-useful
strugee

2
現在、審査待ちの状態ではありませんが、4つの近い票に危険な状態で残っています。最後の票を獲得した場合は、ここにpingを送信して、投票を再開できるようにしてください。
Michael Homer

3
@strugee同意しない。はい、私たちは確信して推測することはただの意見です...が、それでも実際にそこに人々があるかもしれませんので、知っている -それは-または最初の手のアカウントを聞いた/読んで覚えていることはお答えすることが可能である質問。1970年はそう昔ではありません。
Baard Kopperud、2016年

6
UnixtrMulticsからPL / 1 translate組み込み関数の派生物として継承しましたが、これTRSystem / 360アーキテクチャーでのコマンドの一般化でした(IBM System-360 Green Cardを参照)。価値があることを指摘QNXの実装では、実際にファイルから読み取ることができ経由-r
don_crissti

回答:


13

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

tr ... < file
tr ... < file > file2
tr ... < file | sponge file
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.