Ułatwianie Bash CLI

Ułatwianie Bash CLI
Ten samouczek pokaże, jak dostosować powłokę bash, aby uczynić wiersz poleceń łatwiejszym i szybszym.

Cele

Pod koniec tej widzenia będziesz w stanie:

  • Zmień monit o wyświetlenie bieżącego katalogu roboczego
  • Ustaw monit na wybrany kolor
  • Utwórz i używaj aliasów
  • Zapisz dostosowanie, takie jak monit i aliasy
  • Użyj funkcji historii
  • Użyj zakończenia polecenia

Katalog domowy - dom

Linux używa zestawu zmiennych środowiska górnego przypadku, raczej jak otwory pidgin, które są automatycznie wypełnione, do przechowywania informacji. Pełną listę można wyświetlić w następujący sposób:

$ set | więcej

Wprowadziłem tutaj więcej niż mniej, aby polecenie można było zobaczyć na zrzucie ekranu.

Nazwa katalogu domowego użytkownika, zwykle/domu/nazwy użytkownika (/dom/kdm w moim CAE), jest przechowywana w domu zmiennej środowiskowej; Należy zauważyć, że większość zmiennych środowiskowych jest w górnym przypadku.

Używamy $ podczas odwoływania się do zmiennej środowiska, aby określić, że jest to

nazwa zmiennej, a nie ciąg. Aby wyświetlić zmienną dom do domu:

$ echo $ dom

Linux jest pełen skrótów, a postać Tilde, ~, jest skrótem do domu. Zamiast tego można go użyć:

$ echo ~

Katalog roboczy - PWD

Poletka PWD może być użyta do ustalenia, który jest bieżącym katalogiem roboczym. Kiedy użytkownik się loguje, jest to ich katalog domowy zgodnie z definicją w /etc/passwd plik. Tutaj wyświetlamy tylko dwa ostatnie wiersze pliku i bieżącą ścieżkę dla użytkownika KDM:

$ ogon -2 /etc /passwd
$ pwd

Zmiana katalogów - CD

CD poleceń może być użyta do zmiany bieżącego katalogu roboczego.

Na przykład, aby przejść do katalogu głównego:

$ cd /; pwd
#; znak pozwala na dwa polecenia na jednym wierszu

Aby przejść do katalogu /itp

$ cd /etc; PWD

Aby wrócić do poprzedniego katalogu, użyj polecenia:

$ CD -

Aby wrócić do katalogu domowego, użyj CD CD CD bez żadnych opcji:

$ CD; PWD

Polecenie - PS1

Podczas korzystania z polecenia CD do zmiany katalogów nie zawsze jest oczywiste, jaki jest obecny katalog. Shell Bash umożliwia dostosowanie wiersza.

Domyślny wiersz polecenia jest przechowywany w zmiennej systemowej, PS1; to jest wprowadzone górny sprawa. Aby wyświetlić zmienną Wprowadź:

$ echo $ ps1

Zauważ, że „$” wyświetlane nie jest monitem, ale treść zmiennej!

Do zmiany wiersza można użyć następujących znaków specjalnych:

  • \ s- \ v bieżąca powłoka i wersja
  • \ W Obecny katalog roboczy
  • \ h@\ u host i nazwa użytkownika
  • \ d@\ t aktualna data i godzina

Na przykład, aby ustawić monit na bieżącą powłokę i wersję, użyj:

$ Ps1 = '\ s- \ v:'

Pojawia się teraz jako Bash-5.0: .

Aktualny katalog - $ PWD

Aby zaoszczędzić stałe użycie polecenia PWD, monit może być ustawiony na pełną nazwę ścieżki bieżącego katalogu, koncepcję znaną użytkownikom DOS. Aby to zrobić, ostrożnie wpisz następujące górny sprawa:

Bash-5,0: PS1 = '$ PWD:'

W tym przykładzie pojawia

/home/kdm: .

Teraz zmień katalogi i zwróć uwagę, jak zmienia się monit.

/home /kdm: cd /
/: CD /itc
/itp.: CD

Możemy teraz zobaczyć, w jakim katalogu jesteśmy bez uciekania się do polecenia PWD.

Dodawanie koloru

Kolor, w tym przykładzie żółty, można dodać w następujący sposób:

/home/kdm: ps1 = '\ [\ e [01; 33M \] $ pwd: \ [\ 033 [01; 34m \] \ [\ 033 [00m \]' '


Zwykle mam podpowiedź ustawione na bieżący katalog, rezerwując kolor czerwony (alter 33 do 31 w powyższym poleceniu), gdy używam korzenia. Jednak dla przykładów, które będą miały na celu powrót do znaku „$”.

Wtórna monit ->

Wtórna monit jest również przechowywana w zmiennej systemowej, PS2, również w górnym przypadku. Aby wyświetlić tę zmienną, wpisz:

$ echo $ ps2

Ta monit będzie widoczna, jeśli zostanie wprowadzone niekompletne polecenie, na przykład:

$ echo „Witam tam

W tym przykładzie brakuje drugiego symbolu cytatu. Aby poprawić tę sytuację, wypełnij polecenie lub wprowadź kontrolę i c i ponownie wprowadź polecenie.

Pliki lub katalogi?

Po wyświetleniu zawartości katalogu nie zawsze jest oczywiste, czy wpisy są plikami lub katalogami.

Z opcją -F, często używaną na serwerach UNIX, po wyświetlanych wpisach następuje dodatkowy znak. Na przykład spróbuj:

$ ls -f

Te dodatkowe znaki zawierają następujące i oznaczają:

  • katalog /
  • Plik połączony @
  • Plik wykonywalny *

Systemy Linux obsługują kodowanie kolorów katalogów i plików. Kolory mogą być domyślnie włączone. Jeśli nie, wypróbuj następujące (użyj podwójnego łącznika):

$ ls -kolor

Te dodatkowe kolory obejmują następujące i oznaczają:

  • Katalog niebieski
  • Plik połączony Cyan
  • Plik wykonywalny zielony

Tworzenie aliasów

W niektórych systemach przydatne polecenia, takie jak LA, które uruchamiają polecenie LS -A i LL, które uruchamia polecenie LS -L są dostępne. Jeśli jednak te polecenia nie są dostępne, można utworzyć alias, aby osiągnąć ten sam wynik. Niektóre aliasy można zdefiniować automatycznie po uruchomieniu skorupy.

Alias ​​można utworzyć dla dowolnego często używanego polecenia. Zapisuje to konieczność wpisywania pełnego polecenia i jego opcji. Na przykład, jeśli kolory nie są używane z LS:

$ alias ls = 'ls -color'
$ ls

Te dwa przykłady pokazują pliki w katalogach /etc i / /bin. Opcja -D pokazuje tylko wpisy katalogu, a nie pliki w katalogu:

$ ls -d /bin /y*
$ ls -d /etc /u*

Wspólne aliasy

Aliasy Comman obejmują następujące polecenia dotyczące usuwania, kopiowania i przeniesienia. Te aliasy sprawiają, że polecenie interaktywne, dzięki czemu możesz podjąć działanie lub nie:

$ alias rm = 'rm -i'
$ alias cp = 'cp -i'
$ alias mv = 'mv -i'

W pokazanym tutaj przykładu tworzone są cztery puste pliki. Pierwszy plik 1 jest następnie usuwany. Następnie tworzono pseudonim dla RM, a File2 jest usuwany interaktywnie:

Rzeczywista nazwa polecenia niekoniecznie musi być używana dla nazwy alias. Zauważ, że te przykłady używają aliasu do LS utworzonych powyżej:

$ alias la = 'ls -a'
$ alias ll = 'ls -l'
$ la
$ ll

Za pomocą aliasów

Aby wyświetlić listę aliasów, użyj polecenia alias. Jest bardzo prawdopodobne, że domyślnie będziesz miał już kilka aliasów:

$ alias

Polecenie można wywołać bez użycia pseudonimu poprzez prefiksowanie polecenia za pomocą backslash, \ . Jest to szczególnie przydatne, jeśli istnieje alias do RM -i i chcesz usunąć wiele plików!

$ ls
$ \ ls

Aby usunąć jedno lub więcej aliasów poleceń, użyj:

$ unalias la la
$ alias

Oszczędzanie dostosowań

Jedną z wad przy zmianie wiersza lub dodawaniu aliasów jest to, że ustawienia te są utracone, gdy użytkownik zakończy sesję. Problem ten można przezwyciężyć, zapisując ustawienia w pliku konfiguracji. Bash Shell przechowuje zmienne i aliasy na stałe w jednym z kilku ukrytych plików, pliki zaczynające się od pełnego zatrzymania.

Tutaj użyję prostego edytora nano (vim może być używany) do aktualizacji ukrytego pliku .Bashrc Aby skonfigurować środowisko.

Dodałem swoje zmiany na końcu pliku, zmieniłem monit i dodałem kilka moich ulubionych aliasów:

$ nano .Bashrc

Aby zapisać zmiany i wyjść, wprowadź kontrolę i x.

Polecenie DOT - .

Nowa .plik bashrc można przetestować, otwierając nową sesję lub logując się i ponownie. Jako alternatywę plik można przetestować w ten sposób:

$… Bashrc

Kropka (.) Polecenie uruchamia zawartość pliku w bieżącej powładzie.

Historia dowodzenia

Funkcja historii poleceń utrzymuje listę niedawno używanych poleceń w pliku .bash_history i zapewnia skrót do ponownego wykonywania dowolnego z tych poleceń.

Aby wyświetlić ostatnie 10 poleceń, wpisz:

Historia $ 10

Aby ponownie wykorzystać ostatnie użycie polecenia !!. Na przykład:

$ head -3 /etc /shadow
$ sudo !!

Edytuj wiersz poleceń

Klucze kontrolne używane do edytowania poprzednich wpisów wiersza poleceń zawierają następujące:

  • Kontrola i wyszukiwanie historii odwrotnej
  • Kontrola i przejdź do początku linii
  • Control & E Przejdź do końca linii
  • Control & G Anuluj wyszukiwanie i przywróć oryginalną linię

W tym przykładzie używam Control & R (dwa razy), aby dokonać odwrotnego wyszukiwania polecenia głowy. Naciśnięcie ENTER uruchomi następnie polecenie:

Ukończenie polecenia

W powładzie Bash karta Klawor Sekwencji może być użyta do wypełnienia nazwy pliku używanej w poleceniu pod warunkiem, że istnieje dokładny dopasowanie.

Aby to wypróbować, najpierw zmień na katalog /pojemnik:

$ cd /bin

Wpisz następujące polecenie, ale nie Naciśnij jeszcze Enter:

$ ls -l y

Teraz naciśnij patka klucz dwa razy. Wyświetlona zostanie lista wszystkich plików, które zaczynają się od postaci.

Dodaj znaki do polecenia, aby wywołać unikalną nazwę, ale znowu nie naciśnij Enter.

$ ls -l yp

Teraz naciśnij patka klucz. Polecenie automatycznie wybierze prawidłowy plik.