GNU/Linux >> Znalost Linux >  >> Linux

Jak přidat adresář do PATH v Linuxu [Rychlý tip]

Proměnná PATH v Linuxu ukládá cestu k adresářům, kde má hledat spustitelné soubory, když spustíte příkaz.

[email protected]:~$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

Jak vidíte, PATH se skládá z několika adresářů (jako /usr/local/sbin, /usr/bin a další) oddělených dvojtečkou (:) .

Pokud chcete spouštět nějaké spustitelné soubory jako příkaz odkudkoli v systému, měli byste přidat jejich umístění do proměnné PATH.

To je běžné při nastavování vývojového prostředí. Představte si například, že jste si stáhli a nainstalovali Javu a Maven. Aby vaše programy fungovaly správně, budete muset zadat umístění binárních souborů Maven a Java v PATH.

Tento rychlý tutoriál je o nastavení PATH v Linuxu. Kromě kroků zmíním také věci, na které byste měli být opatrní při práci s PATH.

Přidání adresáře do PATH v Linuxu

Proces přidání nového adresáře do proměnné PATH v Linuxu je v podstatě tento:

export PATH=$PATH:your_directory

Kde your_directory je absolutní cesta do příslušného adresáře.

Řekněme, že si stáhnete a rozbalíte Maven do domovského adresáře a chcete přidat jeho adresář bin do PATH. Předpokládejme, že absolutní cesta k tomuto adresáři bin je /home/abhishek/maven/apache-maven-3.8.0/bin.

Zde je to, co byste měli dělat:

export PATH=$PATH:/home/abhishek/maven/apache-maven-3.8.0/bin

export PATH=$PATH:/home/abhishek/maven/apache-maven-3.8.0/bin

Na co si dát pozor zde:

  • $ před názvem proměnné znamená, že odkazujete na její hodnotu. PATH je název proměnné, $PATH je hodnota proměnné PATH.
  • Neměli byste používat $ s PATH na levé straně =
  • Před a za =nesmí být žádné mezery
  • Nezapomeňte vložit :za $PATH, protože adresáře v PATH jsou odděleny dvojtečkou.
  • Před a za dvojtečkou (:) nesmí být mezera.

Jakmile nastavíte PATH s novou hodnotou, zkontrolujte, zda byla PATH správně aktualizována.

[email protected]:~$ echo $PATH
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/abhishek/maven/apache-maven-3.8.0/bin

Možná budete chtít spustit příkaz nebo skript, pro který jste upravili PATH. To vám jistě řekne, zda je nyní PATH správně nastavena.

Provedení změn v PATH natrvalo

Přidali jste požadovaný adresář do proměnné PATH, ale změna je dočasná. Pokud opustíte terminál, ukončíte relaci nebo se odhlásíte ze systému, PATH se vrátí zpět a změny budou ztraceny.

Pokud chcete, aby byly změny v proměnné PATH pro sebe trvalé, můžete ji přidat do souboru .bashrc ve vašem domovském adresáři, za předpokladu, že používáte prostředí Bash.

Pro tento úkol můžete použít textový editor, jako je Nano nebo Vim.

nano ~/.bashrc

Pokud chcete, aby byla upravená proměnná PATH dostupná pro každého v systému Linux, můžete přidat export do souboru /etc/profile. To je vhodné, když jste správce systému a máte nakonfigurovaný systém s vlastní cestou.

Bonusový tip:Adresáře mají v PATH přednost

V proměnné PATH je několik adresářů. Když spustíte spustitelný soubor/příkaz, váš systém vyhledá adresáře ve stejném pořadí, v jakém jsou uvedeny v proměnné PATH.

Pokud /usr/local/sbin předchází /usr/bin, spustí se nejprve prohledání spustitelného souboru v /usr/local/sbin. Pokud je spustitelný soubor nalezen, hledání skončí a spustí se.

To je důvod, proč najdete několik příkladů, kdy je další adresář přidán před vše ostatní v PATH:

export PATH=your_directory:$PATH

Pokud si myslíte, že váš další adresář by měl být prohledán před vším ostatním, měli byste jej přidat před $PATH, jinak jej přidejte za $PATH.

Bylo to dostatečně jasné?

Snažil jsem se vysvětlit věci s nezbytnými detaily, ale nezacházel jsem příliš hluboko do podrobností. Děláte sit jasné téma nebo jste zmatenější než dříve? Pokud máte stále pochybnosti, dejte mi vědět v komentářích.



Linux
  1. Linux – Ldd nenajde cestu, jak přidat?

  2. Jak zkopírovat adresář v příkazovém řádku Linuxu [Tip pro začátečníky]

  3. Jak mohu vytvořit strom adresářů v C++/Linux?

  1. Jak přidat soubor .so do java.library.path v Linuxu

  2. Mohu přidat zkratku pro nahrazení cesty v Linuxu?

  3. ldd nenajde cestu, Jak přidat

  1. Jak přidat adresář do PATH v Linuxu [s příklady]

  2. Jak vyčistit verze Snap Package v Linuxu [Rychlý tip]

  3. Jak zkopírovat cestu k adresáři pro zachování souboru v Linuxu?