/ / Jak korzystać z polecenia Command w systemie Linux

Jak korzystać z polecenia Look w systemie Linux

Terminal systemu Linux działający w środowisku pulpitu o tematyce Ubuntu.

Linux look polecenie przeszukuje plik i wyświetla listę wszystkichwiersze rozpoczynające się od określonego słowa lub frazy. Ale uważaj! Zachowuje się inaczej w różnych dystrybucjach Linuksa. Ten samouczek pokaże, jak z niego korzystać.

Wygląd Ubuntu Polecenie zachowuje się inaczej

Dla prostego, ale przydatnego polecenia, look z pewnością dało mi to obejście, kiedy badałem ten artykuł. Wystąpiły dwa problemy: zgodność i dokumentacja.

Ten artykuł został sprawdzony przy użyciu Ubuntu, Fedory i Manjaro. look został dołączony do każdej z tych dystrybucji,co było świetne. Problem polegał na tym, że zachowanie nie było takie samo we wszystkich trzech przypadkach. Wersja Ubuntu była zupełnie inna. Według stron Ubuntu zachowanie powinno być takie samo.

W końcu to rozgryzłem. look tradycyjnie używa wyszukiwania binarnego, podczas gdy Ubuntu look używa wyszukiwania liniowego. Strony man Ubuntu online dla Bionic Beaver (18.04), Cosmic Cuttlefish (18.10) i Disco Dingo (19.04) mówią, że wersja Ubuntu używa wyszukiwania binarnego, co nie jest prawdą.

Jeśli spojrzymy na lokalny Strona podręcznika Ubuntu, widzimy, że wyraźnie określa ich look używa wyszukiwania liniowego. Istnieje opcja wiersza polecenia, która wymusza użycie wyszukiwania binarnego. Żadna z wersji w innych dystrybucjach nie ma opcji wyboru między metodami wyszukiwania.

man look

„wygląd człowieka” w oknie terminala.

Przewijając stronę podręcznika, widzimy sekcję opisującą tę wersję look za pomocą wyszukiwania liniowego zamiast wyszukiwania binarnego.

Wygląd strony Ubuntu w oknie terminalu.

Morał tej historii jest sprawdzenie najpierw lokalnych stron podręcznika użytkownika.

Wyszukiwanie liniowe a wyszukiwanie binarne

Metoda wyszukiwania binarnego jest szybsza i więcejwydajne niż wyszukiwanie liniowe. Praca z dużymi plikami czyni to bardzo oczywistym. Minusem wyszukiwania binarnego jest to, że plik musi być posortowany. Jeśli nie chcesz sortować pliku, posortuj jego kopię, a następnie użyj go z look.

Pokażemy to gdzie indziej w tym artykule. Pamiętaj, że w Fedorze, Manjaro i spodziewamy się większości reszty świata Linuksa, musisz utworzyć posortowaną kopię pliku i pracować z tym.

Instalowanie słów

look może pracować z dowolnym wybranym plikiem tekstowym lub z lokalnym plikiem słownika „words”.

Na Manjaro musisz zainstalować plik „słów”. Użyj tego polecenia:

sudo pacman -Syu words

„sudo pacman -Syu words” w oknie terminala.

Korzystanie z wyglądu

W tym artykule będziemy pracować z plikiem tekstowym wiersza Edwarda Leara „Jumblies”.

Spójrzmy na jego zawartość za pomocą tego polecenia:

less the-jumblies.txt

„mniej the-jumblies.txt” w oknie terminala.

Oto pierwsza część wiersza. Pamiętaj, że używamy Ubuntu, więc plik pozostaje nieposortowany. W przypadku Fedory i Manjaro pracujemy z posortowaną kopią pliku, którą omówimy w dalszej części tego artykułu.

„Jumblies” mniej w oknie terminalu.

Jeśli szukamy linii rozpoczynających się od słowa „Oni”, dowiemy się, co zrobili Jumblies.

look They the-jumblies.txt

„look Oni the-jumblies.txt” w oknie terminala.

look odpowiada, wymieniając następujące wiersze:

Dane wyjściowe z „look They the-jumblies.txt” w oknie terminala.

Ignorowanie wielkości znaków

Robić look ignoruj ​​różnice między wielkimi i małymi literami, użyj -f opcja (ignoruj ​​wielkość liter). Znów użyliśmy słowa „one”, ale tym razem jest to małe litery.

look -f they the-jumblies.txt

spójrz -f one the-jumblies.txt w oknie terminala.

Tym razem wyniki zawierają dodatkową linię.

Dane wyjściowe z „look -f they the-jumblies.txt” w oknie terminala.

Linia, która zaczyna się od „THEY”, została pominięta w ostatnim zestawie wyników, ponieważ jest zapisana wielkimi literami i nie pasuje do naszego wyszukiwanego hasła „Oni”.

Ignorowanie wielkości liter pozwala look aby uwzględnić to w wynikach.

Używanie wyglądu z posortowanym plikiem

Jeśli Twoja dystrybucja Linuksa ma wersję look zgodnie z tradycyjnym sposobem korzystania z wyszukiwania binarnego, musisz albo posortować plik, albo pracować z posortowaną jego kopią.

Powtórzmy polecenie, aby wyszukać „Oni”, ale tym razem w Manjaro.

wyglądają w pliku jumblies.txt w oknie terminala.

Jak widać, żadne wyniki nie zostały zwrócone. Ale wiemy, że w wierszu są wiersze zaczynające się od słowa „oni”.

Zróbmy posortowaną kopię pliku. Jeśli zamierzasz użyć -f (zignoruj ​​wielkość liter) lub -d (tylko znaki alfanumeryczne i spacje) opcje z look, musisz ich użyć podczas sortowania pliku.

The -o Opcja (wynik) pozwala określić nazwę pliku, do którego powinny zostać dodane posortowane linie. W tym przykładzie jest to „sorted.txt”.

sort -f -d the-jumblies.txt -o sorted.txt

sort -f -d -jumblies.txt -o sorted.txt w oknie terminala.

Użyjmy look w pliku sorted.txt, a następnie użyj -f i -d opcje

sort -f -d -jumblies.txt -o sorted.txt w oknie terminala.

Teraz otrzymujemy oczekiwane wyniki.

Uwzględnij tylko spacje i znaki alfanumeryczne

Aby wyglądać, ignoruj ​​wszystko, co nie jest znakiem alfanumerycznym ani spacją, użyj -d (alfanumeryczna) opcja.

Zobaczmy, czy są jakieś słowa, które zaczynają się od „Och”.

look -f oh the-jumblies.txt

spójrz -f o-the-jumblies.txt w oknie terminala.

Żadne wyniki nie są zwracane przez look.

Spróbujmy jeszcze raz i powiedzmy, aby zignorować wszystko inne niż znaki alfanumeryczne i spacje. Oznacza to, że znaki i symbole, takie jak interpunkcja, będą ignorowane.

look -f -d oh the-jumblies.txt

spójrz -f -d o-the-jumblies.txt w oknie terminala.

Tym razem otrzymujemy wynik. Nie znaleźliśmy tego wiersza wcześniej, ponieważ cudzysłowy i wykrzyknik mylą wyszukiwanie.

Dane wyjściowe z „look -f -d oh the-jumblies.txt” w oknie terminala.

Określanie znaku kończącego

Możesz powiedzieć look użyć określonego znaku jako znaku kończącego. Zazwyczaj spacje i koniec linii są używane jako znak kończący.

The -t Opcja (zakończ znak) pozwala nam określić znak, którego chcemy użyć. W tym przykładzie użyjemy znaku apostrofu. Musimy to zacytować odwrotnie, aby to zrobić look wie, że nie otwieramy łańcucha.

Cytujemy również wyszukiwane hasło, ponieważ zawiera ono spację. Szukamy dwóch słów.

look -f -t ' "they call" the-jumblies.txt

look -f -t „nazywają” jumblies.txt w oknie terminala.

Wyniki pasują do wyszukiwanego terminu, zakończonego apostrofem, którego użyliśmy jako znak kończący.

Dane wyjściowe z „look -f -t” nazywają „jumblies.txt” w oknie terminala.

Korzystanie z wyglądu bez pliku

Jeśli nie podasz nazwy pliku w wierszu poleceń, look używa pliku słów.

Komenda:

„look circle” w oknie terminala.

daje te wyniki:

„Look Circle” powoduje otwarcie okna terminala.

Są to wszystkie słowa w pliku, które zaczynają się od słowa „koło”.

nie szukaj dalej

To wszystko look.

To całkiem proste, gdy wiesz, że istnieją różne zachowania w różnych dystrybucjach Linuksa, i zastanawiasz się, czy Twoja wersja używa wyszukiwania binarnego czy liniowego.