W takich scenariuszach możemy użyć naszej historii polecenia powłoki, aby przewijać nasze poprzednie polecenia lub użyć wyszukiwania odwrotnego, aby wyszukać określone polecenie za pomocą strzałek w górę i w dół.
W tym samouczku omówi sposoby znalezienia i ponownego wykorzystania naszych poprzednich poleceń za pomocą funkcji Historii poleceń ZSH.
Zmienne historii ZSH
Zanim zagłębimy się w sposób przeszukiwania naszej historii poleceń w ZSH, pomocne jest omówienie różnych zmiennych, których ZSH używa do obsługi historii poleceń.
W niektórych przypadkach może się okazać, że historia poleceń dla powłoki ZSH nie jest przechowywana w trwałym pliku. Dlatego niektóre zmienne, które omówimy.
Podstawowymi zmiennymi, o których powinieneś być świadomy podczas pracy z historią ZSH, to:
$ Histfile - Ta zmienna opisuje ścieżkę do pliku historii ZSH. Jeśli masz zainstalowane ramy, takie jak OH-MY-ZSH, będzie to odnosić się do .plik Zsh_History w katalogu domowym.
Echo $ Histfile
/Home/Ubuntu/.zsh_history
$ Histsize - Zmienna historyczna określa liczbę poleceń załadowanych do pamięci z pliku historii. Domyślnie ta wartość jest ustawiona na 100 poleceń.
Echo $ histsize
1000
$ Savehist - Inną niezbędną zmienną jest Savehist. Określa maksymalną liczbę poleceń przechowywanych w .plik zsh_history. Wartość domyślna dla tej zmiennej jest podobna do $ histsize.
Echo $ Savehist
1000
Powyższe są kilka kluczowych zmiennych historii ZSH, które powinieneś wiedzieć. Możesz dowiedzieć się więcej, sprawdzając dokumentację lub używając polecenia:
Man Zshoptions
Jak włączyć historię ZSH
Jak wspomniano wcześniej, możesz spotkać sytuację, w której Zsh nie zachowuje historii dowodzenia. Aby to rozwiązać, musisz dodać $ HISTFILE do swojego .plik Zshrc.
Dodaj następujący wpis do swojego .plik Zshrc.
eksport Histfile = ~/.zsh_history
Możesz także dodać powyższe zmienne środowiskowe, aby określić maksymalną liczbę poleceń przechowywanych w pliku historii. Zapraszam do zmiany tej wartości na dowolny numer, który chcesz. Jednak w przeciwieństwie do Bash nie można dodać 0 do przechowywania nieograniczonych poleceń.
Eksportuj historyza = 1000
Eksport Savehist = 1000
Aby zapisać zmiany w bieżącej sesji, użyj polecenia:
Źródło ~/.Zshrc
Jak oglądać i korzystać z historii ZSH
Teraz, gdy włączyliśmy historię poleceń w powładzie ZSH, możemy nauczyć się z niej korzystać.
Wszystkie polecenia wpisane w sesji ZSH zostaną automatycznie przechowywane w pliku historii do ponownego użycia.
Aby wyświetlić wszystkie polecenia przechowywane w .plik zsh_history, możesz uścisnąć zawartość pliku jako:
Jednak po prostu przeglądanie wszystkich poleceń, wcześniej wykonane, nie pomaga nam.
Aby przejrzeć wszystkie polecenia, które wcześniej wykonałeś, użyj strzałki w górę i w dół, aby przewijać historię.
Strzałka w górę przewinie plik pokazujący najwcześniejsze polecenie, które przeprowadziłeś, a strzałka w dół przewija plik pokazujący najnowsze polecenie w Twojej historii.
Kiedy znajdziesz polecenie, które chcesz ponownie powtórzyć, naciśnij ENTER, aby monitować powłokę, aby je wykonać.
Jeśli natkniesz się na polecenie z podobną składnią do tego, co chcesz, ale nie dokładne, możesz użyć lewej i prawej strzałki, aby poruszać się po poleceniu i edytować.
WSKAZÓWKA: Aby szybko przejść do początku lub końca polecenia, użyj odpowiednio Ctrl + A i Ctrl + E.
Wniosek
Ten samouczek pokazał, jak pracować z historią dowodzenia ZSH. Jeśli nie musisz ręcznie zarządzać parametrami poleceń ZSH, rozważ zainstalowanie frameworka OH-MY-ZSH, który zawiera wiele funkcji włączonych po wyjęciu z pudełka.