Ich habe ein Unix-Buch, den Mann und die Wikipedia-Seite nachgeschlagen tr
, konnte aber keinen Grund finden, warum es so entworfen / implementiert wurde, dass es nicht aus einer Datei liest, sondern ausschließlich aus der Standardeingabe. Zum Beispiel Werkzeuge wie wc
, grep
, sed
und awk
alle Eingaben aus einer Datei glücklich , wenn gelesen wird oder von der Standardeingabe. Gab / gibt es einen zwingenden Grund, so zu gestalten tr
?
10
tr
von Multics als Ableitung der in PL / 1translate
integrierten Funktion geerbt , was wiederum eine Verallgemeinerung einesTR
Befehls in der System / 360- Architektur war (siehe IBM System-360 Green Card ). Es ist erwähnenswert, dass die QNX- Implementierung tatsächlich aus einer Datei über-r
Antworten:
Die UNIX-Philosophie befürwortet "kleine, scharfe Werkzeuge", daher lautet die Antwort, dass das Lesen aus einer Datei entgegen der UNIX-Philosophie aufgebläht wäre. Wie, warum
wc
,grep
,sed
,awk
, usw. von Dateien lesen Sie, die Antwort ist, dass sie alle Funktionen, die mehr erfordern als ein Eingang oder Eingangswahl oder anderweitig benötigt direkten Zugriff auf die Dateien. Da diestr
aus diesen Gründen nicht häufig verwendet wird, bleibt Ihnen eines der folgenden Formulare, um Ihre Anforderungen zu erfüllen.quelle