Jak używać mniej poleceń w systemie Linux

Polecenie less umożliwia przewijanie stron przez plik tekstowy, za każdym razem wyświetlając ekran pełen tekstu. Na pierwszy rzut oka wydaje się, że jest to jedno z najprostszych poleceń Linuksa, ale jest o wiele więcej za mniej niż na pierwszy rzut oka.

Historia mniej

Wszystko w Linuksie – i Uniksie – ma swoją historię, bez zamierzonej gry słów. Program less jest oparty na programie more, który został pierwotnie wydany w 1978 roku w wersji 3.0 Berkeley Software Distribution Unix (3.0BSD). more pozwoliło ci na stopniowe przeglądanie pliku tekstowego, wyświetlając jednocześnie ekran pełen tekstu.

Ze względu na konieczność, jako matka wynalazku, to niezdolność wczesnych wersji programu more do przewijania pliku do tyłu skłoniła Marka Nudelmana do mniejszego rozwoju i przezwyciężenia tego konkretnego problemu. Prace te rozpoczęły się w 1983 roku, a pierwsza wersja została wydana poza firmą, w której pracował w 1985 roku. Od października 2019 roku jest nadal opiekun mniej.

Zastanawiam się, czy jest użytkownik Linuksa, który nie używał mniej? Nawet jeśli nie użyli go do przejrzenia wybranego pliku tekstowego, prawdopodobnie użyli polecenia man. Man nie woła za kulisami, aby wyświetlić strony podręcznika.

To polecenie z wieloma sztuczkami w rękawie.

Dlaczego mniej znaczy lepiej niż więcej

na przestrzeni lat systematycznie dodawano coraz mniej. Ma oszałamiającą ilość opcji wiersza polecenia i naciśnięć klawiszy w aplikacji. Zrób szybkie porównanie strona podręcznika za mniej i strona podręcznika po więcej, a zaczniesz widzieć, jak mniej absolutnie przewyższa więcej.

more przezwyciężył początkowy błąd polegający na niemożności przewijania tekstu wstecz, ale tylko w przypadku plików. Nie można przewijać wstecz przez wejście potokowe. Możesz to zrobić za mniej.

Dzięki elastyczności w nawigowaniu po plikach, przeglądaniu wielu plików, wyszukiwaniu tekstu, upuszczaniu i powracaniu do zakładek oraz radzeniu sobie z danymi wejściowymi z potoku, mniej wygrywa. Używaj mniej zamiast więcej.

Czytanie pliku z mniejszą liczbą

Aby załadować plik do less, podaj nazwę pliku w linii poleceń:

less Dr-Jekyll-and-Mr-Hyde-001.txt

mniej Dr-Jekyll-and-Mr-Hyde-001.txt w oknie terminala

Plik zostanie załadowany i wyświetlony. Początek (lub „początek”) pliku jest pokazany w oknie terminala. Możesz użyć kółka myszy do przewijania tekstu do przodu i do tyłu.

Na klawiaturze użyj klawisza spacji lub klawisza Page Down, aby przejść do przodu po jednym ekranie tekstu na raz.

Page Up powoduje przejście do tyłu pliku (w kierunku „początku” pliku). Klawisze Home i End przenoszą Cię bezpośrednio na początek i koniec pliku tekstowego.

less wyświetlanie pliku tekstowego w oknie terminala

Nazwa pliku jest wyświetlana w lewym dolnym rogu wyświetlacza. Kiedy zaczniesz poruszać się po pliku, dolna linia zostanie wyczyszczona. Służy do wyświetlania wiadomości i wprowadzania poleceń w.

Naciśnij „q”, aby zakończyć mniej.

Wyświetlanie numerów linii

Aby linie w pliku tekstowym były dla Ciebie numerowane, użyj opcji -N (numery linii).

less -N Dr-Jekyll-and-Mr-Hyde-001.txt

mniej -N Dr-Jekyll-and-Mr-Hyde-001.txt w oknie terminala

Numery wierszy mogą być przydatne, aby poprowadzić Cię z powrotem do określonych wierszy lub sekcji w plikach dziennika i innych plikach, które nie są napisane standardową prozą.

less wyświetlając plik tekstowy z numerami wierszy w oknie terminala

Wyszukiwanie za mniej

Aby przeszukać tekst pliku, naciśnij „/”, a następnie wpisz szukaną frazę. W wyszukiwaniu rozróżniana jest wielkość liter. Wyszukiwana fraza jest wyświetlana w dolnym wierszu wyświetlacza. Naciśnij „Enter”, aby przeprowadzić wyszukiwanie.

W tym przykładzie wyszukiwanym hasłem jest „Enfield” i można to zobaczyć u dołu wyświetlacza.

Szukać

Wyszukiwanie odbywa się od bieżącej strony do końca pliku tekstowego. Aby przeszukać cały plik, przejdź na początek pliku przed rozpoczęciem wyszukiwania.

Zostaniesz poinformowany, jeśli nie ma dopasowań. W przypadku znalezienia dopasowania wyświetlacz przesuwa się, aby wyświetlić znalezioną pozycję.

mniej wyświetlanie pasującego elementu wyszukiwania

Aby znaleźć następny pasujący element, naciśnij „n”. Aby wyszukać poprzedni pasujący element, naciśnij „N”.

mniej z dwoma pasującymi elementami wyszukiwania

Aby wyszukiwać wstecz od aktualnej pozycji w pliku do początku pliku, naciśnij „?” i wpisz wyszukiwane hasło. Aby znaleźć następny pasujący element, naciśnij „n”. Aby wyszukać poprzednią pasującą pozycję, naciśnij „N”.

Zwróć uwagę, że podczas wyszukiwania wstecz następny pasujący element (znaleziony za pomocą „n”) jest następny bliżej początku pliku, a „N” dla poprzedniego pasującego elementu szuka pasującego elementu bliżej dół pliku. innymi słowy, „n” i „N” odwracają kierunek wyszukiwania podczas wyszukiwania do tyłu.

Otwieranie pliku za pomocą wyszukiwanego hasła

Możesz użyć opcji -p (wzorzec), aby less przeszukał plik tekstowy i znalazł pierwszy pasujący element. Następnie wyświetli stronę z pasującym elementem wyszukiwania, zamiast pierwszej strony pliku. O ile, oczywiście, element wyszukiwania nie znajduje się na pierwszej stronie pliku.

Zauważ, że nie ma spacji między -p a wyszukiwanym hasłem.

less -pEnfield Dr-Jekyll-and-Mr-Hyde-001.txt

mniej -pEnfield Dr-Jekyll-and-Mr-Hyde-001.txt

Plik jest wyświetlany z podświetlonym pierwszym pasującym hasłem wyszukiwania.

less wyświetlając plik z podświetlonym pierwszym pasującym elementem wyszukiwania

Poruszanie się w Less: najbardziej przydatne klawisze

Użyj tych klawiszy, aby poruszać się i przeszukiwać plik tekstowy.

Przejdź o jedną linię do przodu: strzałka w dół, Enter, e lub j
Przejdź o jedną linię wstecz: strzałka w górę, y lub k
Przejście o jedną stronę do przodu: spacja lub Page Down
Przejdź o jedną stronę wstecz: Page Up lub b
Przewiń w prawo: strzałka w prawo
Przewiń w lewo: strzałka w lewo
Przejdź na początek pliku: Strona główna lub g
Skocz na koniec pliku: End lub G
Przejdź do określonej linii: wpisz numer linii, a następnie naciśnij „g”
Przejdź do wartości procentowej w pliku: wpisz wartość procentową, a następnie naciśnij „p” lub „%”. (Możesz nawet wprowadzić wartości dziesiętne, więc aby przeskoczyć do punktu 27,2 procent w pliku, wpisz „27,2”, a następnie naciśnij „p” lub „%”. Dlaczego miałbyś chcieć używać liczb dziesiętnych? Szczerze mówiąc, nie mam pojęcia).
Szukaj do przodu: naciśnij „/” i wpisz zapytanie, na przykład „/ Jekyll”, i naciśnij Enter
Szukaj do tyłu: naciśnij „?” i wpisz zapytanie, np. „/ Hyde”, i naciśnij Enter
Następny pasujący element wyszukiwania: n
Poprzedni pasujący element wyszukiwania: N
Zakończ: q

Ściśnij puste linie

Opcja -s (squeeze blank lines) usuwa serię pustych linii i zastępuje je pojedynczą pustą linią.

W naszym przykładowym pliku znajduje się kilka następujących po sobie pustych wierszy, zobaczmy, jak mniej je traktuje, gdy używamy opcji -s:

less -s Dr-Jekyll-and-Mr-Hyde-001.txt

less -s Dr-Jekyll-and-Mr-Hyde-001.txt w oknie terminala

Wszystkie podwójne (lub więcej) puste wiersze zostały w każdym przypadku zastąpione jednym pustym wierszem.

Mniej bez wyświetlanych sekwencji wielu pustych linii

Przeglądanie wielu plików

less może otworzyć dla Ciebie wiele plików. Możesz przeskakiwać z pliku do pliku. mniej zapamięta twoją pozycję w każdym pliku.

less Dr-Jekyll-and-Mr-Hyde-001.txt Dr-Jekyll-and-Mr-Hyde-002.txt

mniej Dr-Jekyll-and-Mr-Hyde-001.txt Dr-Jekyll-and-Mr-Hyde-002.txt w oknie terminala

Pliki zostaną otwarte i zostanie wyświetlony pierwszy plik. Zostaniesz pokazany, który plik przeglądasz i ile plików zostało załadowanych. Jest to podkreślone poniżej.

mniej z dwoma załadowanymi plikami

Aby wyświetlić następny plik, naciśnij „:”, a następnie naciśnij „n”.

Wyświetlacz zmieni się, aby pokazać drugi plik, a informacje w dolnym wierszu zostaną zaktualizowane, aby pokazać, że przeglądasz drugi plik. Jest to podkreślone poniżej.

przeglądanie drugiego pliku w mniej

Aby przejść do poprzedniego pliku, wpisz „:”, a następnie naciśnij „p”.

Korzystanie ze znaków

less pozwala na upuszczenie znacznika, dzięki czemu możesz łatwo wrócić do oznaczonego przejścia. Każdy znacznik jest reprezentowany przez literę. Aby upuścić znak w najwyższym wyświetlanym wierszu, naciśnij „m”, a następnie naciśnij literę, której chcesz użyć, na przykład „a”.

Po naciśnięciu „m” w dolnym wierszu wyświetlacza pojawi się monit, oczekujący na naciśnięcie klawisza z literą.

mniej monitowania o znak

Gdy tylko naciśniesz literę, monit zostanie usunięty.

Z dowolnego innego miejsca w pliku możesz łatwo wrócić do znaku, naciskając apostrof (lub pojedynczy cudzysłów) „” ”, a następnie naciskając literę znaku, do którego chcesz powrócić. Po naciśnięciu klawisza „’” zostaniesz poproszony o oznaczenie, do którego chcesz przejść.

mniej monitowania o powrót do znaku

Naciśnij literę znaku, do którego chcesz powrócić, a ta sekcja pliku tekstowego zostanie wyświetlona.

mniej wracając do znaku

Używanie wejścia potokowego z mniejszym

less może wyświetlać informacje w postaci strumienia potokowanego tekstu, tak samo łatwo, jak gdyby był to plik.

Polecenie dmesg wyświetla plik komunikaty bufora pierścieniowego jądra. Możemy przesłać dane wyjściowe z dmesg do less za pomocą następującego polecenia:

dmesg | less

dmesg |  mniej w oknie terminala

Wyświetlane są dane wyjściowe z dmesg.

Wynik z dmesg w less

Możesz stronicować i przeszukiwać dane wejściowe, tak jakby był to plik. Aby zobaczyć najnowsze wiadomości, naciśnij „Koniec”, aby przejść na koniec pliku.

Umieść najnowsze wiadomości dmesg na dole pliku w less

Gdy przychodzą nowe wiadomości, musisz naciskać „End”, aby wymusić wyświetlenie dolnej części pliku przez mniej. To nie jest zbyt wygodne. Aby mniej zawsze wyświetlało dolną część tekstu, nawet podczas dodawania nowych danych, użyj opcji + F (do przodu). Zwróć uwagę na użycie + i nie – jako flagi opcji.

dmesg | less +F

dmesg |  less + F w oknie terminala

Flaga opcji + mówi less, aby traktować opcję tak, jakbyś użył tego polecenia w less. Więc jeśli zapomniałeś użyć opcji + F, naciśnij „F” wewnątrz mniej.

mniej w oczekiwaniu na nowe dane wejściowe od dmesg

less wyświetla dół tekstu, który pokazuje najnowsze wiadomości z dmesg. Wyświetla komunikat, że oczekuje na więcej danych. Gdy pojawia się więcej komunikatów jądra, ekran przewija się, dzięki czemu zawsze można zobaczyć najnowsze komunikaty.

W tym trybie nie można przewijać ani stronicować; jest przeznaczony do wyświetlania dolnej części tekstu potokowego. Aby wyjść z jego trybu, naciśnij Ctrl + c, a powrócisz do zwykłego, mniej interaktywnego trybu.

Edycja plików za mniej

Możesz edytować pliki mniej… cóż, w pewnym sensie. To polecenie nie może edytować plików, ale jeśli wpiszesz „v” podczas przeglądania pliku, plik zostanie przesłany do domyślnego edytora. Kiedy opuszczasz edytor, wracasz do mniej.

Naciśnij „v” podczas przeglądania pliku w mniej:

plik wyświetlany w mniej

Plik jest ładowany do domyślnego edytora, w tym przypadku nano:

plik załadowany do edytora nano

Kiedy zamkniesz edytor, zaczniesz mniej.

W podsumowaniu

Choć może się to wydawać sprzeczne z intuicją, w tym bez przypadku> więcej.