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?

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.


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

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,


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


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.


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.


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.


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.


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


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
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.