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 )?

Hossein
quelle
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

Drehmoment
quelle
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
Pedro Loureiro
quelle
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.

Alb
quelle
5
mycommand | grep "phrase I want to find"

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

kzh
quelle
1

Wenn Sie GNU Screen- copyModus verwenden und gut jkfunktioniert.

Jeffrey Jose
quelle