Tento článek pojednává o důležité proměnné prostředí prostředí Linux nazvané PATH a jak můžete do této proměnné přidat adresář.
Obecně platí, že většina programů, které kdy na svém systému Linux spustíte, bude fungovat bezchybně a váš shell nebude v době jejich spuštění vykazovat žádné chyby. Může však nastat situace, kdy budete chtít rychle spouštět vlastní skripty nebo programy z nestandardních adresářů na vašem systému Linux.
V takových případech musíte přidat jejich zdrojový adresář do proměnné PATH vašeho shellu, aby věděl, kde je najít.
K čemu se proměnná prostředí PATH používá?
Proměnné prostředí řídí chování shellu. Pokud například někdy použijete příkazový řádek v systému Linux, systém se při hledání umístění zadávaných příkazů spoléhá na proměnnou PATH.
PATH je vestavěná proměnná prostředí v Linuxu, která říká shellu, které adresáře má hledat spustitelné soubory v reakci na příkazy vydané uživatelem nebo aplikací.
Obsahuje dvojtečkou oddělený seznam adresářů používaných k vyhledání příkazů, které zadáte.
Jak přidat adresář do PATH v Linuxu
Chcete-li zjistit, co je právě teď ve vaší PATH, zadejte do terminálu toto:
echo $PATH
Jak vidíte, adresáře v této proměnné jsou odděleny dvojtečkou (:
). V současnosti shell prohledává binární spustitelné soubory v následujících adresářích:
/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/sbin
/bin
/usr/games
/usr/local/games
/snap/bin
/home/linuxiac/.dotnet/tools
Důležité je také pořadí hledání PATH. Pokud tedy máte dva spustitelné soubory se stejným názvem umístěné ve dvou různých adresářích, shell spustí soubor v adresáři, který je na prvním místě v PATH.
Dočasně přidat adresář do PATH
Nyní předpokládejme, že jste vytvořili vlastní skript shellu umístěný v /srv/scripts
a chcete tento adresář přidat do své proměnné PATH. Zde je to, co byste měli dělat:
export PATH=$PATH:/srv/scripts
Aby byly věci transparentnější, pojďme tuto syntaxi rozebrat. Za prvé, zde je význam jednotlivých parametrů:
export
příkaz vyexportuje upravenouPATH
proměnná do prostředí podřízených procesů shellu.$
před názvem proměnné znamená, že odkazujete na její hodnotu.:/srv/scripts
část určuje, že obsah za:
symbol by měl být připojen k hodnotám obsaženým v aktuální proměnné PATH.
Podívejme se, jak PATH nyní vypadá:
echo $PATH
Jak můžete vidět ve výše uvedeném výstupu, /srv/scripts
adresář je přidán na konec proměnné PATH. Nyní soubory, které jste uložili v /srv/scripts
adresář lze spustit kdekoli bez zadání jejich úplné cesty.
Navíc, pokud si myslíte, že by váš adresář měl být prohledán před vším ostatním, můžete jej přidat před $PATH
.
export PATH=/srv/scripts:$PATH
Je důležité si uvědomit, že PATH se vrátí, pokud opustíte terminál nebo se odhlásíte ze systému. Změny budou ztraceny, protože tento způsob nastavení PATH si pamatuje změny pouze dočasně během aktuální relace terminálu.
Chcete-li, aby byla trvalá, podívejte se na sekci níže.
Trvale přidat adresář do PATH
Aby byla změna trvalá, musíte v konfiguračních souborech shellu definovat proměnnou PATH.
Výchozí hodnota PATH pro celý systém je uvedena v /etc/profile
soubor. Nejlepším místem pro přidání adresáře do cesty jednoho uživatele je úprava .bashrc
tohoto uživatele soubor.
Otevřete soubor pomocí textového editoru, přejděte na konec souboru a na jeho konec přidejte následující řádek:
vim ~/.bashrc
export PATH=$PATH:/srv/scripts
Nakonec soubor uložte a načtěte novou PATH do aktuální relace shellu pomocí source
příkaz:
source ~/.bashrc
Chcete-li potvrdit, že byl adresář úspěšně přidán, zadejte následující echo
příkaz ke kontrole cesty:
echo $PATH
Závěr
Jak můžete vidět, přidávání nových adresářů do vaší uživatelské nebo globální proměnné PATH v systému Linux je velmi jednoduché. V tomto článku jsme se však dozvěděli, že existují dva způsoby, jak to udělat:dočasně a trvale.
Pokud máte stále pochybnosti, dejte mi prosím vědět v komentářích.