GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Befehl zum Ausgeben von Dateiinhalten an Stdout?

Ich kenne cat kann dies tun, aber sein Hauptzweck besteht darin, den Inhalt zu verketten, anstatt nur den Inhalt anzuzeigen.

Ich kenne auch less und more , aber ich suche nach etwas Einfachem (kein Pager ), das nur den Inhalt einer Datei an das Terminal ausgibt und speziell dafür gemacht ist, falls es so etwas gibt.

Akzeptierte Antwort:

Das offensichtlichste ist cat . Aber schauen Sie sich auch head an und tail . Es gibt auch andere Shell-Dienstprogramme, um eine Datei zeilenweise zu drucken:sed , awk , grep . Aber diese dienen dazu, den Dateiinhalt zu wechseln oder innerhalb der Datei zu suchen.

Ich habe ein paar Tests gemacht, um abzuschätzen, welches das effektivste ist. Ich laufe alles durch strace um zu sehen, wer die wenigsten Systemaufrufe getätigt hat. Meine Datei hat 1275 Zeilen.

  • awk :1355 Systemaufrufe
  • cat :51 Systemaufrufe
  • grep :1337 Systemaufrufe
  • head :93 Systemaufrufe
  • tail :130 Systemaufrufe
  • sed :1378 Systemaufrufe

Wie Sie sehen können, auch wenn cat wurde entwickelt, um Dateien zu verketten, es ist das schnellste und effektivste. sed , awk und grep druckte die Datei Zeile für Zeile, deshalb haben sie mehr als 1275 Systemaufrufe.


Linux
  1. 5 Möglichkeiten zum Leeren oder Löschen eines großen Dateiinhalts in Linux

  2. Befehlsausgabe oder Dateiinhalt im Spaltenformat anzeigen

  3. So leiten Sie die Ausgabe in eine Datei und Stdout in Linux um

  4. Den Inhalt einer Datei auf den Befehl „echo“ umleiten?

  5. Ausgabe des „letzten“ Befehls?

Fsck-Befehl unter Linux (Dateisystem reparieren)

So speichern Sie die Linux-Befehlsausgabe in einem Bild oder einer Textdatei

So leiten Sie die Shell-Befehlsausgabe um

5 Befehle zum Anzeigen des Inhalts einer Datei in der Linux-Befehlszeile

Wie hängt man die Ausgabe an eine Datei an?

Wie leitet man die Ausgabe von system() in eine Datei um?