Frage Wie öffne ich eine Textdatei in meinem Terminal?


Es gibt eine Datei namens RESULTS.txt und ich möchte diese Datei in meinem Terminal öffnen. (Ich meine, ich möchte sehen, dass der Dateiinhalt im Terminal und nicht in einem Texteditor angezeigt wird) 

Wie mache ich das ?


113


Ursprung


Ich sehe 9 upvotes, aber das ist wirklich grundlegend. Hast du überhaupt versucht, online nach der Antwort zu suchen? - Colton
Es ist eine lustige Frage, die die Präferenzen der Leute zeigt, von einfach cat zu sed zu nano zu vim - alvas
@Sparksis Wenn ich suche nach "öffne eine Textdatei in einem Terminal" bekomme ich Ergebnisse von Mac Foren für Dinge wie Pico, etc. die nicht in Ubuntu sind. Diese Art von Frage ist hier sehr willkommen. - Jorge Castro
Vielleicht möchten Sie in einige Ubuntu Shell Tutorials für Anfänger schauen - Sie werden erklären, wie Sie dies und ähnliche Dinge tun können. - l0b0
@Sparksis Ja, es hat mich hierher geschickt :) - johnc


Antworten:


Für kurze Dateien:

cat <path/your_file>

zeigt direkt eine Textdatei im Terminal an.

Für längere Dateien:

less <path/your_file>

können Sie blättern und suchen (/  text to search  Eingeben) in der Datei; Drücken Sie q beenden.

z.B.

cat /home/john/RESULTS.txt
less /home/john/RESULTS.txt

139



nach Eingabe eines Befehls wie cat /home/suhail/RESULT.txt Ich verstehe das cat: /home/suhail/RESULT.txt: No such file or directory - Suhail Gupta
Wenn du "ls" machst. Was ist das Ergebnis als? - Thomas15v
Wenn Sie sich im selben Ordner wie die Datei befinden, müssen Sie nicht den vollständigen Pfad angeben. Du kannst es einfach tun cat RESULT.txt - Shauna
@SuhailGupta: Es könnte mehr als einen geben suhail Verzeichnis. /home/suhail ist normalerweise dein Home-Verzeichnis. Was macht pwd drucken? Außerdem kann die Tab-Vervollständigung sehr praktisch sein; wenn Sie eingeben cat R<tab>und es gibt nur eine Datei im aktuellen Verzeichnis, deren Name mit beginnt REs wird auf den Namen dieser Datei erweitert. - Keith Thompson
AUF DEM WEG - Unter Windows ist der Befehl type - mowwwalker


Eine andere Alternative ist vim.

vim RESULTS.txt

Sobald Sie eine Datei mit vim geöffnet haben, können Sie Text eingeben, indem Sie eingeben i, zum Beispiel. Wenn Sie Ihre Datei speichern möchten :w (schreiben oder :q (quit) oder :wq (für schreiben und beenden) oder :q! (Beenden und nicht speichern). Manchmal müssen Sie den ESC um die Befehle eingeben zu können.

Vim erfordert etwas lernen, ist aber weit verbreitet und es ist sehr vielseitig.

Überprüfen Sie das Community-Hilfe-Wiki: https://help.ubuntu.com/community/VimHowto

Vim ist ein fortgeschrittener Texteditor, der die Macht des De-facto bietet   Unix-Editor 'Vi' mit einem vollständigeren Funktionsumfang. Vim wird oft genannt   ein "Programmierer-Editor", und ist so nützlich, um so viele zu programmieren   betrachte es als eine ganze IDE. Es ist jedoch nicht nur für Programmierer. Vim   ist perfekt für alle Arten von Textbearbeitung, von der Erstellung von E-Mails bis hin zu   Bearbeiten von Konfigurationsdateien.


26



Eine noch bessere Alternative ist view, die Vim im schreibgeschützten Modus auf Ubuntu startet. Und da das OP gebeten hat zu sehen und explizit nicht zu bearbeiten ... -1 ... natürlich werde ich den Downvote zurücknehmen, falls dieser bearbeitet wird. - 0xC0000022L
@ 0xC0000022L :) Sie können den Downvote behalten. Fühlen Sie sich frei, eine Antwort hinzuzufügen view Wenn du möchtest. Vim ist perfekt in der Lage, Dateien anzuzeigen und beantwortet damit die Frage. - don.joey
Ich habe deine Kommentar zuerst. Für mich in Ordnung. Aber da du Vim erwähnt hast, view würde buchstäblich in Ihre Antwort passen statt in eine separate. Das denke ich immer noch und nicht in einem Texteditor ist ziemlich klar;) - 0xC0000022L
View ist ein dummer Vier-Buchstaben-Alias ​​für vim -R. Wenn Sie keinen Speicherbefehl wie verwenden ZZ, :w oder :x, es gibt keinen Unterschied. Sie können auch Dateien umleiten vim um es als Leser zu benutzen: command | vim -. Dies ist normalerweise besser als lessDer einzige Nachteil ist, dass vim schnappt die gesamte Ausgabe vor der Anzeige von irgendetwas. - Kaz
@ 0xC0000022L: Für jemanden, der ziemlich neu in der Verwendung der Befehlszeile ist, "im Terminal und nicht in einem Texteditor" könnte leicht bedeuten "in einem Dienstprogramm innerhalb des Terminals, nicht in einem Texteditor, der in einem separaten Fenster geöffnet wird". Als ich zum ersten Mal zur Kommandozeile kam, war ich es gewohnt, Anwendungen mit ihren Fenstern zu identifizieren, an die ich sicherlich gedacht hatte vim, nanousw. als Teil des Terminals und nicht als separate Anwendungen für eine ganze Weile. - PLL


all das sind die besten Wege und es gibt noch einen Weg, dies zu tun und das ist mit head Befehl.

head -n -1 filename.txt

und

head -n -0 filename.txt

beide geben Ihnen die gleiche Eingabe.

Kopfbefehl Erläuterung:

Im Allgemeinen head Befehl zum Drucken der Startzeilen der beliebigen Textdatei. Wir können die Textdatei mit anzeigen

head filename.txt

Dadurch werden die ersten 10 Zeilen der obigen Textdatei gedruckt.

Wenn Sie die Anzahl der Zeilen festlegen möchten, die angezeigt werden sollen, können Sie head as verwenden

head -n 20 filename.txt

Dann werden in der obigen Textdatei die ersten 20 Zeilen angezeigt.

Wenn Sie ganze Dateidaten mit head anzeigen möchten, dann können wir es bekommen

head -n -0 filename.txt

Ich hoffe, dass die obige Erklärung Ihnen eine Vorstellung von der Verwendung des Kopfes geben wird.


14



Kannst du das erklären? head Befehl? ist head Software? Wofür stehen -n und -0? - don.joey
@Private Mein Freund, gerne. - Ten-Coin
Dies ist nur eine sehr schlechte Art zu schreiben cat. Wenn das so sein soll, dann gibt es weit mehr als diesen einen Weg, es zu tun ... - Ry-
head -n -0 filename.txt ist äquivalent zu cat filename.txt - Keith Thompson
@Jai: Es ist eine unnötig komplizierte Art zu schreiben cat. - Ry-


Wenn die Datei ziemlich lang ist, sollten Sie sie verwenden

less RESULTS.txt

damit Sie mit den Richtungstasten hindurch navigieren können.


12



Randnotiz: less ist der Nachfolger von more. Und in Bezug auf ausführbare Größe less ist mehr als more. - Joachim Sauer
@Joachim Sauer: auch in Sachen Features, wann immer du mehr machen willst als ansehen;) - 0xC0000022L
@ 0xC0000022L: Wenn Sie anzeigen möchten, vergessen Sie nicht view! (Was ist vi im schreibgeschützten Modus ....) - Alan Shutko
ich benutzte less Vor zwanzig Jahren schon ohne sich Gedanken über seine Größe zu machen more. - Kaz
"less ist more", wie sie sagen - aidan


Eine andere Option ist:

tail -n 30 result.txt

um die letzten 30 Zeilen einer großen Datei mit dem Namen auszudrucken result.txt.


10





Andere Option:

tail -f your_file

Es zeigt Ihnen die letzten zehn Zeilen von your_file. Wenn ein Prozess etwas an diese Datei anfügt, sehen Sie sie auf Ihrem Terminal. man tail gibt dir mehr an tail.

Es ist hilfreich zu sehen, was mit einem Server passiert, wenn Sie diesen Befehl in einer Protokolldatei verwenden.

Drücken Sie Strg-C zu beenden, wenn Sie fertig sind mit der Anzeige.


7





Mit einem Terminal-Texteditor: nano /path/to/file/RESULTS.txt


3



"nicht in einem Texteditor" - Burhan Ali


Dafür gibt es viele Alternativen:

Einige dieser Programme haben viele Parameter, überprüfen Sie das mit --help nach dem Befehl.

  • cat filename druckt die gesamte Datei auf einmal
  • more/less filenameähnliches Verhalten für die Datei in Teilen sehen
  • tail filename Beginnen Sie mit dem Lesen der Datei
  • grep text filename zum Filtern von Ergebnissen

Ich hoffe, dass das bei Ihnen funktioniert.


3





Viele gute Optionen, die hier bereits zur Verfügung gestellt werden, aber eine weitere Option, wenn Sie bearbeiten müssen, ist Emacs:

emacs -nw RESULTS.txt

könnte das nicht brauchen -nw, abhängig. Möglicherweise müssen Sie auch apt-get install emacs23 oder apt-get install emacs24oder wenn Sie kein X haben oder keine X-Abhängigkeiten wünschen, apt-get install emacs23-nox oder apt-get install emacs24-nox.

Und zusätzlich zu cat und less wie an anderer Stelle erwähnt, gibt es more. Mehr ist weniger, weil Sie jeweils eine Seite sehen und nicht über den Befehl selbst scrollen können, aber Sie können mit dem Terminal-Fenster blättern, wenn Sie ein Terminal mit Scroll-Fenster haben:

more RESULTS.txt

Wenn Sie in der Bash sind, haben Sie etwas Ähnliches cat indem du tust:

while IFS= read a;do echo "$a";done<RESULTS.txt

2





Wenn Sie nur den Dateiinhalt lesen möchten, gehen Sie in das Dateiverzeichnis und geben Sie ein

less RESULTS.txt

Wenn Sie die Textdatei vom selben Verzeichnistyp lesen und bearbeiten möchten

nano RESULTS.txt

Das -w Der Befehl nano kann vor dem Dateinamen eingefügt werden, um das Umbrechen von langen Zeilen zu verhindern.


2



Der Schreibmodus ist seit einiger Zeit der Standard für Nano, zumindest jetzt in Ubuntu. Sie müssen es nun explizit dem readonly-Modus mitteilen. - Shauna
Anderer Planet (oder nano Version) hier, nehme ich an. Aber -w Kurzform für --nowrap ... und hat nichts mit schreiben zu tun haben, - 0xC0000022L


Wenn Sie den Inhalt der Datei bearbeiten müssen, verwende ich häufig nano.

nano filename

1