GNU/Linux >> Znalost Linux >  >> Linux

.bashrc vs .bash_profile

Pokud trávíte hodně času na příkazovém řádku, je pravděpodobné, že si budete chtít přizpůsobit prostředí prostředí. To může znamenat vytvoření aliasů, přidání nového adresáře do $PATH nebo změna vzhledu příkazového řádku.

Možná jste se setkali s některými výukovými programy, kde se říká, že máte konfiguraci vložit buď do .bashrc , .bash_profile nebo jiný konfigurační soubor, který čte a spouští bash shell.

V tomto článku budeme hovořit o spouštěcích souborech Bash a rozdílu mezi .bashrc a .bash_profile soubory.

Interaktivní přihlašovací a nepřihlašovací prostředí #

Když je Bash vyvolán, čte a provádí příkazy ze sady spouštěcích souborů. Jaké soubory se budou číst, závisí na tom, zda je shell vyvolán jako interaktivní přihlašovací nebo nepřihlašovací shell.

Shell může být interaktivní nebo neinteraktivní.

Jednoduše řečeno, interaktivní shell je shell, který čte a zapisuje do uživatelského terminálu, zatímco neinteraktivní shell je shell, který není spojen s terminálem, jako když se spouští skript.

Interaktivní shell může být buď přihlašovací nebo nepřihlašovací.

Přihlašovací shell se vyvolá, když se uživatel přihlásí k terminálu vzdáleně přes ssh nebo lokálně, nebo když je Bash spuštěn pomocí --login volba. Interaktivní nepřihlašovací shell je vyvolán z přihlašovacího shellu, například při psaní bash ve výzvě shellu nebo při otevření nové karty terminálu Gnome.

Spouštěcí soubory Bash #

Když je Bash vyvolán jako interaktivní přihlašovací shell, hledá /etc/profile soubor, a pokud soubor existuje, spustí příkazy uvedené v souboru. Poté Bash hledá ~/.bash_profile , ~/.bash_login a ~/.profile soubory v uvedeném pořadí a provede příkazy od prvního nalezeného čitelného souboru.

Když je Bash vyvolán jako interaktivní nepřihlašovací shell, čte a provádí příkazy z ~/.bashrc , pokud tento soubor existuje a je čitelný.

Rozdíl mezi .bashrc a .bash_profile #

.bash_profile je načten a spuštěn, když je Bash vyvolán jako interaktivní přihlašovací shell, zatímco .bashrc je spuštěn pro interaktivní nepřihlašovací shell.

Použijte .bash_profile ke spouštění příkazů, které by se měly spustit pouze jednou, jako je přizpůsobení $PATH proměnná prostředí.

Vložte příkazy, které se mají spustit pokaždé, když spustíte nový shell, do .bashrc soubor. To zahrnuje vaše aliasy a funkce, vlastní výzvy, přizpůsobení historie a tak dále.

Obvykle ~/.bash_profile obsahuje řádky jako pod tímto zdrojem .bashrc soubor. To znamená, že pokaždé, když se přihlásíte do terminálu, jsou oba soubory načteny a spuštěny.

if [ -f ~/.bashrc ]; then
	. ~/.bashrc
fi

Většina distribucí Linuxu používá ~/.profile místo ~/.bash_profile . ~/.profile soubor čtou všechny shelly, zatímco ~/.bash_profile pouze od Bash.

Pokud se ve vašem systému nenachází žádný spouštěcí soubor, můžete jej vytvořit.

Závěr č.

.bash_profile a .bashrc jsou soubory obsahující příkazy shellu, které se spouštějí při vyvolání Bash. .bash_profile se čte a spouští na interaktivních přihlašovacích shellech, zatímco .bashrc v prostředí bez přihlášení.

Další informace o spouštěcích souborech Bash naleznete v příručce Bash.

Pokud máte nějaké dotazy nebo zpětnou vazbu, neváhejte zanechat komentář.


Linux
  1. Přizpůsobení prostředí Bash

  2. Účel .bashrc a jak to funguje?

  3. Chápete význam `$_`?

  1. Který Shell bych měl použít – Tcsh vs Bash?

  2. Jak porovnávat řetězce ve skriptování Bash Shell

  3. [ :Neočekávaný operátor v programování shellu

  1. Spusťte všechny skripty prostředí ve složce

  2. Synchronizace bash profilu mezi počítači

  3. SSH bez zdroje .bashrc