Jak czytać wstecz od końca pliku w mniej lub więcej?

169

Znalazłem do tej pory jeden sposób: mniej + nazwa pliku G, ale przewija się w górę tylko z klawiszem w górę wiersz po wierszu. Co jest bardziej wydajne bez użycia, które zapewnia przewijanie strony, wyszukiwanie wzoru wstecz i tak dalej?

yetanothercoder
źródło

Odpowiedzi:

225

Jestem pewien, że ktoś inny ma lepszą odpowiedź, ale

Z „mniej” po otwarciu pliku:

G goes to the bottom of the file

^b goes up one page

? searches backwards.

Jak powiedziałeś, możesz otworzyć plik za pomocą + G, a następnie użyć? i ^ b, aby przewinąć w górę. Prawdopodobnie są sprytne rzeczy, które możesz zrobić, aby osiągnąć to samo w skrypcie.

Chris
źródło
3
Ctrl-b działa, ale b (samo w sobie) również działa.
Dennis Williamson,
Ups! Jestem tak uwarunkowany, aby używać klawiszy vi, że używam ich również w mniejszym stopniu. Tak - b przenosi cię w górę strony o mniej, ale tylko vi o jedno słowo na raz w vi. Jestem niecierpliwy; Chcę stronę za jednym razem, a mój mózg wielkości orzecha włoskiego nie pamięta, czy czasami mam vi lub mniej ...
Chris
2
mniej pliku, a następnie wpisz „h” =>, otrzymasz ładną instrukcję obsługi. Bardzo schludne, nie potrzeba zewnętrznych przewodników ani strony IMO.
Kharski
6
w rzeczywistości ? = shift + /, /jest wyszukiwanie do przodu.
HongboZhu
W rzeczywistości Shift + Gidzie na dół pliku
Alex78191
82

Dla odmiany, jeśli naprawdę chcesz / musisz odczytać plik do tyłu (ostatni wiersz najpierw):

tac filename | less
Dennis Williamson
źródło
1
To głównie linuks / gnuizm ...
Chris
55
Ciekawostka: tacjest catwstecz
dKen
7
To było imię mojego kota z dzieciństwa. Chyba do tej pory nie zdawałem sobie sprawy, dlaczego.
vaughan
Czy ktoś słyszał o czymś podobnym ztacdo plików spakowanych gzipem (tj. zcatAle wstecz)?
irbanana
1
@irbanana: W jedną stronę . Ale nie oszczędza to czasu na dużych plikach, ponieważ cały plik musi zostać zdekompresowany.
Dennis Williamson,
7

widzie w górę o stronę. ?wykonuje wyszukiwanie do tyłu. hwyświetla pomoc online.

Ignacio Vazquez-Abrams
źródło
4

ogon -r | mniej

Nie wiem, dlaczego nikt nie pomyślał o tym. Ogon bardzo łatwo chwyta koniec pliku. Czy -r nie jest powszechną opcją?

Crissa Kentavr
źródło
Używanie tail (GNU coreutils) 8.13 na Ubuntu 12.02 tutaj. Brak takiej opcji jak -r.
JHH
Myślę, że tail -rto kwestia BSD / macOS - te środowiska nie mają tac.
fzzfzzfzz
4

posługiwać się:

less +F /path/to/your/file

to mniej, ale zaczynając od dołu. Użyj klawisza strzałki w górę, aby przejść wstecz linia po linii lub CTRL + B, aby przejść strona po stronie.

Ruben Estrada
źródło
4
To nie tylko idzie na koniec pliku, ale czeka na dodatkowe wyjście na końcu, jak tail -f. Jeśli nie tego chcesz, powinieneś użyć +Gzamiast tego.
Michael Hampton
masz rację @MichaelHampton
Ruben Estrada
2

Dziwię się, że nikt wcześniej tego nie poruszał, ale:

?patternwyszukuje wzór do tyłu.

N znajduje poprzednie dopasowanie wzorca (tzn. wyszukiwanie do tyłu).

W /patterncelach informacyjnych wyszukuje wzór do przodu i nznajduje następne dopasowanie wzoru. W ten sposób wyszukiwanie jest powszechnie używane.

dr01
źródło
2

Podczas używania morelub journalctl -xeużywania spacji zabiera Cię 1 strona w dół. To działało dla mnie. Mam nadzieję że to pomoże.

Shubham Singh
źródło
1

Inna alternatywa, po tym jak zacząłeś mniej na pliku:

Alt + „Klawisz końcowy”

Przez „klawisz końcowy” mam na myśli klawisz, który zwykle znajduje się poniżej „klawisza głównego” na klawiaturze.

ria
źródło
-1

Jeśli szukasz czegoś konkretnego, może to zrobić:

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

Używam go do wyszukiwania plików dziennika. Nadal jest w „złej” kolejności, ale znacznie krótszy.

Po przeczytaniu odpowiedzi Dennisa Williamsona to moja nowa metoda =)

Rudie
źródło
Nie potrzebuję catz grep-grep $StRING $FILENAME | less
Lee Gee
Imho, to zupełnie inne pytanie.
Jarosław Nikitenko
-1

Być może niektórzy ludzie nie rozumieli, co znaczy dr01 . Staram się to wyrazić innymi słowy.

  • Otwórz plik w mniej
  • Wyszukiwanie do przodu: wprowadź klucz /
  • Wyszukiwanie wsteczne: wprowadzić klucz?
  • Oba powyższe: Wpisz teraz wyszukiwane hasło
  • Naciśnij enter
  • Naciśnij n, aby wyszukać następne znalezisko
  • Naciśnij N, aby wyszukać poprzednie znalezisko
keocra
źródło