/jestem/usr/lokalny/jestem
/usr/lokalny/jestem
/jestem
/usr/jestem
/pstryknąć/jestem
/sbin
/usr/Gry
/usr/lokalny/Gry
Plik z uprawnieniami do wykonywania w jednym z tych katalogów można uruchomić z dowolnej lokalizacji w terminalu Linux.
Nasuwa się więc pytanie, skąd powłoka Linuksa wie, gdzie szukać programów? Nie rozpoczyna wyszukiwania z bieżącego katalogu lub dowolnego miejsca w systemie plików. Powłoka opiera się na $PATH zmienny.
Co to jest zmienna $PATH?
$PATH jest zmienną środowiskową, która mówi powłoce, gdzie umieścić plik wykonywalny. Istnieją różne katalogi zdefiniowane w $PATH zmienny. Aby wyświetlić katalogi w twoim $PATH , uruchom polecenie:
$wyrzucił $PATH
Aby zlokalizować katalog, w którym znajduje się plik wykonywalny polecenia, użyj który polecenie w następujący sposób
$który KomendaNa przykład, aby zlokalizować, gdzie plik wykonywalny dla pwd polecenie, uruchom polecenie:
$który pwd
Z danych wyjściowych widać, że plik wykonywalny znajduje się w /jestem informator. Dla dotykać polecenie, plik wykonywalny znajduje się w /usr/bin informator.
Jak dodać katalog do $PATH
Załóżmy, że masz prosty skrypt powłoki o nazwie Pozdrowienia .sh to drukuje Witaj świecie umieszczony w / home/james/pliki informator. Domyślnie katalog nie jest jeszcze zdefiniowany w $PATH zmienny. Aby uruchomić skrypt z dowolnej lokalizacji lub katalogu, musisz określić bezwzględną ścieżkę do skryptu. Teraz może to być kłopotliwe i czasochłonne.
Aby uruchomić skrypt globalnie (niezależnie od Twojej lokalizacji w systemie plików) bez określania pełnej ścieżki do skryptu, musisz dodać katalog zawierający skrypt do $PATH zmienna przy użyciu poniższej składni.
$eksport ŚCIEŻKA=$PATH:/ścieżka/do/informator/z/plikW takim przypadku poleceniem będzie:
$eksport ŚCIEŻKA=$PATH:/Dom/James/plikiPowinieneś teraz być w stanie wywołać lub uruchomić skrypt z dowolnego katalogu w systemie Linux bez określania bezwzględnej ścieżki do skryptu, jak pokazano.
Jak na stałe dodać katalog do zmiennej $PATH?
Ścieżka, którą właśnie zdefiniowaliśmy do $PATH, jest tylko tymczasowa i nie jest zachowywana po zamknięciu terminala lub ponownym uruchomieniu systemu. Działa tylko w bieżącej sesji powłoki. Jeśli wyjdziesz i uruchomisz inną sesję, natkniesz się na błąd, jak pokazano.
Aby zachować zmiany, zdefiniuj zmienną $PATH w ~.bashrc plik konfiguracyjny. Aby to osiągnąć, otwórz plik konfiguracyjny.
$sudo przyszedłem~/.bashrcNastępnie dodaj linię, jak pokazano.
$eksport ŚCIEŻKA=$PATH:/Dom/James/pliki
Następnie zapisz i wyjdź. Aby załadować nowe zmiany, wywołaj polecenie source w następujący sposób:
$źródło~/.bashrc
Aby zweryfikować dodanie katalogu do $PATH, wykonaj polecenie, jak pokazano.
$wyrzucił $PATH
Zawijanie
I masz to, chłopaki! Udało nam się pomyślnie dodać katalog do $PATH na Linuksie. Jak widać, jest to dość wygodne i proste, zwłaszcza jeśli będziesz regularnie wywoływać skrypt lub aplikację z powłoki. Te same polecenia będą działać dla każdego smaku Linuksa.