6 przydatnych zmiennych powłoki Bash, o których powinieneś wiedzieć
Zmienne powłoki są ważne dla sprawnego działania dowolnego systemu Linux. Na przykład za każdym razem, gdy uruchamiasz program lub polecenie, system sprawdza w zmiennej PATH, czy program jest obecny. Znajomość zmiennych powłoki jest ważna w codziennym użytkowaniu lub administrowaniu systemami Linux.
Znaczenie zmiennych powłoki
Zmienna powłoki jest symbolem zastępczym do przechowywania informacji używanych przez system Linux, programy lub skrypty.
Istnieją różne typy powłok lub interpreterów wiersza poleceń w systemie Linux, z których wszystkie intensywnie wykorzystują zmienne. Niektóre z ważnych ról odgrywanych przez zmienne powłoki obejmują:
- Zmienne powłoki umożliwiają przechowywanie i manipulowanie wartościami w powłoce oraz mogą manipulować wynikami w obliczeniach lub innych operacjach.
- Zapewniają sposób przekazywania wartości między skryptami i programami
- Możesz użyć zmiennych powłoki, aby dostosować zachowanie programów
Zmienne powłoki są bardzo elastyczne; możesz także tworzyć własne zmienne niestandardowe, ale oto niektóre z domyślnych zmiennych, które są dostarczane z twoim systemem.
1. ŚCIEŻKA
Zmienna PATH określa katalogi, w których system ma szukać plików wykonywalnych po wprowadzeniu polecenia w terminalu.
Jest to ogólnosystemowa zmienna środowiskowa i zawiera listę katalogów oddzielonych dwukropkami. Każdy katalog jest kolejno przeszukiwany w poszukiwaniu pliku wykonywalnego o takiej samej nazwie jak wprowadzone polecenie.
Na przykład, jeśli w terminalu wpiszesz polecenie ls, system przeszuka katalogi określone w zmiennej PATH w poszukiwaniu polecenia o nazwie ls . Jeśli znajdzie plik, uruchomi go; jeśli nie, wyświetli komunikat o błędzie „nie znaleziono polecenia”.
Zmienna PATH jest ważna, ponieważ umożliwia uruchamianie poleceń z dowolnego katalogu bez konieczności podawania pełnej ścieżki do pliku wykonywalnego. Na przykład, jeśli masz plik wykonywalny „ls” w katalogu /usr/bin , możesz uruchomić polecenie ls z dowolnego katalogu, po prostu wpisując ls , zamiast określać pełną ścieżkę, tj. /usr/bin/ls .
Bieżącą wartość zmiennej PATH można wyświetlić, uruchamiając polecenie echo w następujący sposób:
echo $PATH
Możesz także modyfikować wartość zmiennej PATH, dodając lub usuwając katalogi z listy. Może to być przydatne, jeśli chcesz dodać katalog zawierający własne pliki wykonywalne lub niestandardowe skrypty albo jeśli chcesz zmodyfikować katalogi przeszukiwane podczas uruchamiania poleceń.
2. DOM
W systemie Linux zmienna HOME jest zmienną środowiskową określającą ścieżkę do katalogu domowego użytkownika. Dlaczego jest to takie ważne? Cóż, Linux to system operacyjny dla wielu użytkowników, a folder domowy to specjalny katalog w systemie powiązany z każdym użytkownikiem.
Katalog domowy jest zwykle używany do przechowywania osobistych plików użytkownika, takich jak dokumenty, zdjęcia, muzyka itp.
Zmienna HOME jest zwykle ustawiana automatycznie podczas logowania i jest używana przez wiele programów i skryptów do lokalizowania katalogu domowego użytkownika. Na przykład, gdy uruchomisz polecenie cd bez żadnych argumentów, użyje ono zmiennej HOME, aby przejść do katalogu domowego użytkownika.
Wiele programów używa zmiennej HOME do przechowywania plików konfiguracyjnych lub innych danych w katalogu domowym użytkownika. Bieżącą wartość zmiennej HOME można wyświetlić, uruchamiając polecenie echo $HOME .
3. UŻYTKOWNIK
Zmienna USER określa nazwę aktualnie zalogowanego użytkownika. Jest ustawiany automatycznie podczas logowania i jest często używany przez programy i skrypty do określania nazwy użytkownika bieżącego użytkownika.
Zmienna USER jest często używana w skryptach do dostosowywania zachowania programu w oparciu o bieżącego użytkownika. Na przykład skrypt może sprawdzać wartość zmiennej USER i wykonywać określone działania tylko wtedy, gdy bieżący użytkownik ma uprawnienia roota lub sudo.
Możesz także użyć zmiennej do uruchamiania niektórych ogólnych poleceń. Na przykład, dodając użytkownika do grupy dokerów, możesz po prostu uruchomić następujące polecenie zamiast wpisywać rzeczywistą nazwę użytkownika:
sudo usermod -aG docker $USER
4. SKÓRA
Powłoka to program udostępniający interfejs wiersza poleceń (CLI) do interakcji z systemem operacyjnym.
Większość systemów Linux domyślnie używa Bourne Again Shell (Bash), ale istnieje wiele alternatyw. Powłoka C (csh), powłoka Z (Zsh), ryba itp.
Zmienna SHELL określa ścieżkę do domyślnej powłoki użytkownika. Jest ustawiany automatycznie po zalogowaniu.
Ponadto zmienna jest używana w skryptach do dostosowywania zachowania programów w oparciu o domyślną powłokę użytkownika. Na przykład skrypt może sprawdzić wartość zmiennej SHELL i użyć innej składni lub opcji w zależności od używanej powłoki.
Bieżącą wartość zmiennej SHELL można wyświetlić, uruchamiając echo $SHELL . Możesz zmienić domyślną powłokę za pomocą polecenia chsh.
5. PWD
Kolejna ważna zmienna środowiskowa w systemie Linux, PWD przechowuje bieżący katalog roboczy. W przeciwieństwie do większości zmiennych środowiskowych, które są w większości statyczne, ta jest aktualizowana przez powłokę za każdym razem, gdy zmieniasz katalogi za pomocą polecenia cd.
Możesz użyć zmiennej PWD w swoich skryptach powłoki, aby łatwo odnieść się do bieżącego katalogu roboczego. Wartość zmiennej jest podobna do tej, którą otrzymujesz po uruchomieniu polecenia pwd.
6. NAZWA HOSTA
Nazwa hosta lub nazwa urządzenia to unikatowa nazwa używana do identyfikacji komputera w sieci. Na przykład, jeśli chcesz połączyć się przez SSH z maszyną, możesz po prostu użyć nazwy hosta zamiast adresu IP.
Zmienna HOSTNAME jest zmienną środowiskową, która po prostu określa nazwę hosta systemu. Jest ustawiany automatycznie podczas uruchamiania systemu i zwykle służy do identyfikacji systemu, gdy jest on podłączony do sieci. Istnieje kilka sposobów zmiany nazwy hosta w systemie Linux.
Zmienna HOSTNAME jest również używana przez programy i skrypty do identyfikowania systemu i dostosowywania jego zachowania na podstawie nazwy hosta. Skrypt zwykle sprawdza wartość zmiennej HOSTNAME i wykonuje określone działania tylko wtedy, gdy system jest określonym hostem.
Tworzenie niestandardowej zmiennej w systemie Linux
Oprócz domyślnych zmiennych systemu Linux, które są automatycznie ustawiane. Możesz także zdefiniować własne zmienne powłoki za pomocą polecenia export. Aby utworzyć nową zmienną o nazwie GREETING z wartością „Hello World”, możesz użyć następującego polecenia:
export GREETING="Hello World"
Następnie możesz użyć zmiennej GREETING w swoich skryptach lub w wierszu poleceń, tak jak każdej innej zmiennej środowiskowej.
Dodaj komentarz