GNU/Linux >> Znalost Linux >  >> Linux

Pochopení proměnných v Bash Shell pod Linuxem

Co jsou proměnné?

Proměnná je dočasná úložná oblast v paměti, která je buď nastavena uživatelem, shellem, systémem nebo jakýmkoli programem, který načítá jiný program. Existují dvě kategorie proměnných:

  1. Proměnné prostředí jsou platné po dobu trvání relace.
  2. Proměnné prostředí platí pouze pro aktuální instanci shellu a používají se k nastavení krátkodobých pracovních podmínek.
Poznámka :Když proměnná shellu následuje znak dolaru $, shell interpretuje, že hodnota uložená v této proměnné má být v tomto bodě nahrazena.

Zobrazení proměnných prostředí

Příkaz echo zobrazí hodnotu uloženou uvnitř proměnné shellu.

$ echo $SHELL
/bin/bash
$ set
DISPLAY=:0.0
EDITOR=/usr/bin/vi
SHELL=/bin/bash
TERM=xterm-256color
USER=geek
...

Nastavení a zrušení nastavení proměnných prostředí

Proměnné shellu se nastavují pomocí příkazu set. Například:

$ set history = 50
$ echo $history
30

Příkaz set se také používá k zobrazení proměnných shellu a jejich hodnot. Například:

$ set | grep history
30

Hodnoty lze obrátit pomocí příkazu unset.

Výchozí proměnné prostředí Bash

Tabulka popisuje proměnné, kterým bash shell při přihlášení přiřadí výchozí hodnoty.

Proměnná Význam
EDITOR Definuje výchozí editor pro shell
FCEDIT Definuje editor pro příkaz fc. Používá se s mechanismem historie pro úpravu dříve provedených příkazů.
DOMŮ Nastaví adresář, do kterého se příkaz cd změní, když na příkazovém řádku není zadán žádný argument
LOGNAME Nastaví přihlašovací jméno uživatele
PATH Určuje dvojtečkou oddělený seznam adresářů, které se mají prohledávat, když shell potřebuje najít příkaz, který má být proveden
PS1 Určuje primární výzvu shellu Bash:$
PS2 Určuje sekundární příkazový řádek, normálně:>
SHELL Určuje název shellu (tj. /bin/bash)

Přizpůsobení proměnných prostředí:PS1

Řetězec příkazového řádku je uložen v proměnné shellu PS1 a můžete si jej přizpůsobit podle svých preferencí.

$ PS1=”$LOGNAME@`uname -n` \$PWD $ “
user@server01: $

– V tomto příkladu výzva zobrazuje přihlašovací jméno uživatele, název hostitele systému a aktuální pracovní adresář.
– Uživatelské jméno je načteno z proměnné LOGNAME a název hostitele pochází z výstupu „uname -n ‘ command.
– Tento příkazový řádek zobrazuje správné informace, i když se uživatel přihlásí na různých hostitelích.
– Značka zadní uvozovky (`) ohraničuje vložený řetězec příkazu.

Přizpůsobení proměnných prostředí:PATH

Proměnná PATH obsahuje seznam názvů adresářových cest oddělených dvojtečkami. Při provádění příkazu na příkazovém řádku hledá shell tyto adresáře zleva doprava v pořadí, aby našel daný příkaz. Pokud shell nenajde příkaz v seznamu adresářů, zobrazí chybovou zprávu „nenalezeno“. Chcete-li zajistit, aby příkazy fungovaly hladce, měli byste zahrnout příslušný adresář do proměnné PATH. Příklad ilustruje zahrnutí domovského adresáře do proměnné PATH.

Chcete-li například zahrnout domovský adresář do proměnné PATH, proveďte následující příkazy.

$ echo $PATH
/usr/bin:/usr/sbin
$ PATH=$PATH:~
$ echo $PATH 
/usr/bin:/usr/sbin:/home/user01
Poznámka :Proměnná PATH automaticky předá hodnotu do subshellů.


Linux
  1. Jak vymazat historii Bash na Linuxu

  2. Jak nakonfigurovat omezený Bash Shell v Linuxu

  3. Příklady příkazů chsh v Linuxu

  1. Funkce v proměnných Shell?

  2. Linux – Jak rozumíte operacím synchronizačních příkazů v Linuxu?

  3. Použití Linux Sleep Command ve skriptech Bash

  1. Snadné pochopení příkazů Shell pomocí skriptu „Explain Shell“ v Linuxu

  2. Porozumění základním příkazům Linuxu

  3. 6 Operátorů řetězení příkazového řádku Bash Shell v Linuxu