Suchfunktion im Terminal?


30

Ich habe ein Programm geschrieben, das viel Text an das Terminal ausgibt.

Ich suche nach bestimmten Wörtern im Text, um zu sehen, ob ich es richtig gemacht habe, aber es ist unmöglich, den Text einfach zu lesen.

Gibt es irgendwelche Fähigkeiten oder Befehle, die es mir tatsächlich ermöglichen, ein Wort im Terminal nachzuschlagen (wie Ctrl+F )?


Was ist der richtige Befehl, um mit dem Terminal ein Wort oder einen Satz in eine Textdatei einzufügen?

Antworten:


44

Es ist Shift+ Ctrl+ F.

Möglicherweise möchten Sie den Scrollback- Wert in Unbegrenzt ändern , um keine Zeilen zu verlieren:

  • Bearbeiten> Profileinstellungen> Scrollen

    Bildbeschreibung hier eingeben


9
Faustregel: Shift + Shortcut funktioniert größtenteils
jrg

Kann dies in Lubuntu erreicht werden? Es scheint, es kann nicht
pablofiumara

10

Andere Option:

yourCommand | less

Jetzt können Sie mit den Pfeiltasten nach oben, unten, links und rechts gehen (normalerweise verwenden Sie nur die ersten beiden).

Sie können auch eingeben /word, um nach einem Wort (oder einem regulären Ausdruck) nach dem Cursor zu suchen. Umgekehrt ?wordwird das Wort / Regex vor (über) dem Cursor gesucht. (Cursor ist die Position, an der Sie sich im Text befinden.)

Sie können auch die Home- und die End-Taste verwenden, um zum Anfang und zum Ende der Ausgabe zu gelangen. Durch Drücken von Qbeenden Sie das Programm (kehren zur Konsole zurück).

Mehr Info:

man less

9

Sie könnten die Ausgabe mit in eine Datei umleiten > myfile.txtund dann die Datei mit grep durchsuchen.

grep "word" myfile.txt

Normalerweise bevorzuge ich diesen Ansatz, da Sie sich keine Gedanken über die Größe des Terminalpuffers machen müssen und die Ausgabe von mehreren Programmläufen problemlos beibehalten können.


5
mycommand | grep "phrase I want to find"

Damit entfällt @ Alb ist ^ Zwischenschritt in eine Datei umleiten.


Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.