
Ich möchte wissen, wie ich auf dem Terminal nach bestimmten Texten suchen kann. Wenn ich cat
Protokolldateien durchsuche, möchte ich nach bestimmten Wörtern wie „Job“ oder „Zusammenfassung“ suchen, damit ich nicht die gesamte Protokolldatei durchlesen muss.
Ich weiß, dass es ähnliche Fälle gabPostdarüber. Die Antwort aus diesem Beitrag ist Ctrl+ A+ [ <text>
, was bei mir nicht zu funktionieren scheint. Wenn ich das drücke, erhalte ich eine Nachricht No bracket in top line (press Return)
, oder wenn ich diese Tasten gleichzeitig drücke, erhalte ich die Nachricht ESC
.
Gibt es eine Möglichkeit, dies mit PuTTY zu tun? Gibt es alternativ eine allgemeine Möglichkeit, in der Ausgabe von Befehlen nach Text zu suchen?
Antwort1
Sie können auch mit der rechten Maustaste auf die Titelleiste oben im Fenster klicken und „Alles in die Zwischenablage kopieren“ auswählen, es dann in einen Texteditor einfügen und diesen für die Suche verwenden.
Antwort2
Das Ctrl+ a+ [ist für die Verwendung innerhalb des Anwendungsbildschirms (einer App zum Multiplexen von Konsolen) vorgesehen.
weniger
Im Allgemeinen ist die einfachste Methode hierfür die Verwendung von Tools wie less
und , um die Ausgabe der Anwendung, die die Nachrichten auf der Konsole generiert, weiterzuleiten und innerhalb der Anwendung zu suchen less
. Sie können dies tun, indem Sie den Schrägstrich ( /
) gefolgt von der Zeichenfolge verwenden, nach der Sie suchen. Drücken Sie die Eingabetaste, um die Suche auszuführen.
Beispiel
$ less filename.log
...then in less, type a forward slash followed by string to search, foo
grep
In gleicher Weise wie oben bei der Verwendung less
können Sie auch Tools wie verwenden, um tail
die letzten paar Zeilen der Protokolldateimeldungen einer Anwendung auszudrucken, und auch verwenden, grep
um nur nach Zeilen zu suchen, die eine übereinstimmende Zeichenfolge/ein übereinstimmendes Muster enthalten.
$ grep "somestring" filename.log