Wie kann man vom Dateiende in weniger oder mehr rückwärts lesen?

169

Ich habe bisher einen Weg gefunden: weniger + G Dateiname, aber es wird nur mit der Aufwärtstaste Zeile für Zeile nach oben gescrollt. Was ist leistungsfähiger, wenn weniger Verwendungen verwendet werden, die das Scrollen nach Seite, die Mustersuche rückwärts usw. ermöglichen?

noch kein anderer Kodierer
quelle

Antworten:

225

Ich bin sicher, jemand anderes hat eine bessere Antwort, aber

Mit "less" nachdem Sie die Datei geöffnet haben:

G goes to the bottom of the file

^b goes up one page

? searches backwards.

Wie du schon sagtest, kannst du die Datei mit + G öffnen und dann? und ^ b, um nach oben zu scrollen. Es gibt wahrscheinlich clevere Dinge, die Sie tun können, um dasselbe in einem Skript zu erreichen.

chris
quelle
3
Strg-b funktioniert, aber b (für sich) auch.
Dennis Williamson
Hoppla! Ich bin so konditioniert, vi-Schlüssel zu verwenden, dass ich diese auch in weniger verwende. Ja - b verschiebt Sie in weniger eine Seite nach oben, in vi jedoch jeweils nur ein Wort zurück. Ich bin ungeduldig; Ich möchte eine Seite auf einmal, und mein walnussgroßes Gehirn kann sich nicht erinnern, ob ich manchmal in vi oder weniger bin ...
Chris
2
Wenn Sie Ihre Datei nicht mehr benötigen, geben Sie 'h' ein => Sie erhalten eine nette Bedienungsanleitung. Sehr ordentlich, keine Notwendigkeit für externe Anleitungen oder die Manpage IMO.
Kharski
6
in der Tat ? = shift + /, /ist nach vorne zu suchen.
HongboZhu
In der Tat Shift + Ggeht an den unteren Rand der Datei
Alex78191
82

Zur Abwechslung, wenn Sie eine Datei tatsächlich rückwärts lesen wollen / müssen (letzte Zeile zuerst):

tac filename | less
Dennis Williamson
quelle
1
Das ist meist ein Linux / gnuism ...
chris
55
Lustige Tatsache: tacist catrückwärts
dKen
7
Dies war der Name meiner Katze aus Kindertagen. Ich glaube, ich habe bis jetzt nicht begriffen, warum.
Vaughan
ztacHat jemand was von gzippten Dateien gehört (also zcatdoch rückwärts)?
Irbanana
1
@irbanana: Ein Weg . Bei großen Dateien wird jedoch keine Zeit gespart, da die gesamte Datei dekomprimiert werden muss.
Dennis Williamson
7

wblättert auf ?macht die Suche rückwärts. hRuft die Online-Hilfe auf.

Ignacio Vazquez-Abrams
quelle
4

Schwanz -r | geringer, weniger

Ich weiß nicht, warum jemand nicht daran gedacht hat. Schwanz packt das Ende einer Datei wirklich einfach. Ist -r keine gebräuchliche Option?

Crissa Kentavr
quelle
Verwendung von tail (GNU coreutils) 8.13 unter Ubuntu 12.02 hier. Keine solche Option wie -r.
JHH
Ich denke, es tail -rist eine BSD / MacOS-Sache - diese Umgebungen haben keine tac.
Fzzfzzfzz
4

verwenden:

less +F /path/to/your/file

das ist weniger, aber von unten beginnend. Verwenden Sie die Aufwärtspfeiltaste, um zeilenweise rückwärts zu springen, oder Strg + B, um seitenweise zu springen.

Ruben Estrada
quelle
4
Dies geht nicht nur zum Ende der Datei, es wartet auch auf zusätzliche Ausgabe am Ende, wie z tail -f. Wenn Sie dies nicht möchten, sollten Sie +Gstattdessen verwenden.
Michael Hampton
Du hast recht @MichaelHampton
Ruben Estrada
2

Ich bin überrascht, dass das noch niemand erwähnt hat, aber:

?patternSucht nach Muster rückwärts.

N Findet die vorherige Übereinstimmung des Musters (dh rückwärts suchen).

/patternSucht als Referenz nach einem Muster vorwärts und nfindet die nächste Übereinstimmung des Musters. So wird die Suche häufig verwendet.

dr01
quelle
2

Wenn Sie die Leertaste moreoder journalctl -xedie Leertaste verwenden, blättern Sie 1 Seite nach unten. Das hat bei mir geklappt. Hoffe das hilft.

Shubham Singh
quelle
1

Eine weitere Alternative, nachdem Sie weniger mit einer Datei begonnen haben:

Alt + "Ende-Taste"

Mit "End-Taste" meine ich die Taste, die sich normalerweise unterhalb der "Home-Taste" auf einer Tastatur befindet.

ria
quelle
-1

Wenn Sie nach etwas Bestimmtem suchen, könnte dies folgendermaßen aussehen:

cat yourfile.txt | grep "something specific" | less

Ich benutze es für die Suche nach Protokolldateien. Es ist zwar immer noch in der "falschen" Reihenfolge, aber viel kürzer.

Nachdem ich Dennis Williamsons Antwort gelesen habe, ist das meine neue Methode =)

Rudie
quelle
Ich brauche nicht catmit grep-grep $StRING $FILENAME | less
Lee Gee
Oh, das ist eine ganz andere Frage.
Yaroslav Nikitenko
-1

Vielleicht haben einige Leute nicht verstanden, was dr01 bedeutet. Ich versuche es mit anderen Worten auszudrücken.

  • Öffnen Sie die Datei in weniger
  • Vorwärtssuche: Schlüssel eingeben /
  • Rückwärtssuche: Schlüssel eingeben?
  • Für beide der vorhergehenden Punkte: Geben Sie jetzt Ihren Suchbegriff ein
  • Drücken Sie Enter
  • Drücken Sie n, um nach dem nächsten Ergebnis zu suchen
  • Drücken Sie N, um nach dem vorherigen Ergebnis zu suchen
Keocra
quelle