it-swarm-eu.dev

Jak upravím svou PATH tak, aby změny byly k dispozici v každé relaci terminálu

Chci přidat adresář pro prohledávání mé vyhledávací cesty. Vím, že musím upravit proměnnou prostředí PATH. Chci však, aby změna byla trvalá, aby byla vždy účinná, pro každé otevřené okno Terminálu (bash).

https://help.ubuntu.com/community/EnvironmentVariables je přetíženo matoucími a možná konfliktními informacemi.

Používám Ubuntu 10.04. Předpokládejme, že chci přidat /usr/local/foo k mé PATH. Který soubor (.bashrc, .profile, .bash_login, atd ...) mám upravit a jak by měly vypadat nové řádky?

63
Joshua Flanagan

Následující příkaz přidá cestu k vaší aktuální cestě:

export PATH=$PATH:/my/custom/path

Pokud chcete, aby vaše nastavení tento příkaz provedlo pokaždé, existuje řada míst, kam jej můžete umístit. Po přihlášení se v tomto pořadí provedou následující skripty:

/etc/profile      (which starts by loading everything in /etc/profile.d)
~/.profile        (which starts by loading ~/.bashrc if you are running bash)

Poznámky

  • ~/.profile se načte, pouze pokud ~/.bash_profile a ~/.bash_login NEEXISTUJE. Jinak je namísto toho načte alespoň bash. Je vhodné použít .profile a ne bash specifické skripty. Pokud jste tedy v těchto pokusech vytvořili .bash_login, prosím smažte to hned.

  • ~/.bashrc se načte, pouze pokud provozujete interaktivní relaci. (něco s výzvou, kde můžete něco napsat).

  • ~/.bashrc se načte znovu a znovu, při každém otevření nového terminálu . Takže nová karta v terminálu gnome, nový virtuální terminál atd. Takže, i když se znovu nepřihlásíte, .bashrc se načte (a tím resetuje své prostředí) pokaždé, když otevřete nový Shell.

  • Věci jako byobu by skutečně měly jít do .profile, (jinak to nebude fungovat ;-)

  • Věci jako cesty by měly jít do .profile pokud chcete, aby fungovaly mimo interaktivní relace. (řekněte, když stisknete Alt+F2 v GNOME)

80
Ralf

Dostal jsem to do práce úpravou ~/.profile

Vypadá to, že přidání ~/bin na mou cestu bylo špatným příkladem, protože v ~/.profile již existuje kód, který to automaticky provede, pokud adresář existuje.

Pro přidání adresáře usr/local/foo na mou cestu pro každou další relaci, přidám/upravím následující řádek na konci mého .profile:

export PATH=$PATH:/usr/local/foo

Aby se to však projevilo, potřeboval jsem se odhlásit a znovu přihlásit (jednoduše zavření okna Terminálu a otevření nového nefungovalo).

14
Joshua Flanagan

Chcete-li znovu načíst .profile a provést změny bez nutnosti odhlášení/přihlášení, spusťte:

source ~/.profile
4
Bruno Freitas

Můžete přidat cestu k /etc/environment, ale uvědomte si, že žádná rozšíření Shell nebudou fungovat; proměnná bude nastavena na doslova zadané znaky.

3
sagarchalise

Můžete upravit .bashrc soubor ve vašem $HOME adresář.

Na konec tohoto souboru přidejte řádek:

export PATH="$HOME/directory_to_include_in_path/:$PATH"

Můžete také upravit .profile soubor, také ve vašem $HOME adresář, včetně následujícího řádku:

PATH="$HOME/directory_to_include_in_path/:$PATH"

To pro mě fungovalo.

2
Denner Vieira

Pokud máte ohmyzsh goto svůj domovský adresář přes terminál a typ

nano .zshrc

Na konci souboru zadejte

export PATH = "$ HOME/directory_to_include_in_path /: $ PATH"

Nakonec restartujte terminál. Pracoval pro mě. Doufám, že to bylo užitečné.

0
Vallie

To je to, co pro mě fungovalo

Při nastavování Java_HOME proměnná

V Terminálu spusťte vytvoření proměnné

echo 'export Java_HOME=“/Library/Java/JavaVirtualMachines/jdk1.8.0_181.jdk/Contents/Home' | Sudo tee -a ~/.profile

spusťte přidání proměnné do cesty

echo 'export PATH="${Java_HOME}/bin:$PATH"' | Sudo tee -a ~/.profile

pak

source ~/.profile

Chcete-li zjistit, zda je proměnná nastavena správně běh

vi .profile

pak :q ukončit

Pro úpravu souboru .profile (v případě opravy) běh

Sudo vi .profile

Lis I vložit.

Po úpravách stiskněte Esc a :wq pro uložení a ukončení.

0
Vickie