GNU/Linux >> Znalost Linux >  >> Linux

Co je to Source Command v Linuxu a jak to funguje?

Příkaz source spouští příkazy ze souboru v aktuálním shellu. Lze jej také použít k obnovení proměnných prostředí a upřímně řečeno, primárním použitím příkazu source je obnovení proměnných prostředí.

source filename [options]

Můžete také použít . (tečka) místo příkazu source takto:

. filename [options]

Jak funguje zdrojový příkaz?

Syntaxe tohoto příkazu je jednoduchá, ale jeho pochopení vyžaduje trochu hlubší pohled na některé koncepty Linuxu. Pokud s Linuxem nebo programováním začínáte, možná máte jen mlhavou představu o tom, co je proměnná.

Pokud jste tento termín slyšeli, ale přesně nevíte, co znamená, nevadí! Pamatujte, že všichni začínáme přesně ze stejného místa. Nikdo se ráno náhle neprobudí jako správce systému nebo programátor.

Než přejdu dál, podám krátké vysvětlení.

Pokud jste již obeznámeni s vytvářením proměnných v bash, můžete přeskočit na další záhlaví.

Přehled proměnných

Můžete otevřít libovolný bash terminál a vytvořit nové proměnné. Proměnnou si lze představit jako zástupný symbol, který lze použít k nasměrování vašeho systému na určitou informaci (písmena, čísla nebo symboly).

Podívejme se na příklad. Vytvořím novou proměnnou s názvem name a přiřadím jí hodnotu Christopher.

V bash se to dělá pomocí vzorce:název_proměnné=vaše_proměnná . Mezi = nevkládejte žádné mezery symbol a váš text.

[email protected]:~$ name=Christopher
[email protected]:~$ echo $name
Christopher

Co se stane, když napíšu pouze název proměnné?

[email protected]:~$ echo name
name

Pokud tento symbol zapomenete, bash vrátí text, který jste zadali. Tady mu říkám, aby ozvěna nebo vytiskla „jméno“. Bez symbolu $ bash nerozpozná, že chcete použít proměnnou, kterou jste vytvořili.

Vaše proměnná bude vložena tam, kde je volána. Mohu to tedy také zahrnout do věty jako je tato:

[email protected]:~$ echo "Hello, $name. $name is a great name. It's good to meet you."
Hello, Christopher. Christopher is a great name. It's good to meet you.

S proměnnými můžete dělat mnoho věcí, ale doufám, že tento základ bude stačit k tomu, aby každému, kdo si to přečte, porozuměl, jak fungují.

Proměnné prostředí vs proměnné prostředí

Jako další klíč k pochopení zdrojového příkazu si promluvme o vytrvalosti. Toto je snadný způsob, jak přemýšlet o rozdílu mezi skořápkou a obsahem životního prostředí. Můžete si to také představit jako „přenositelnost“ v závislosti na kontextu.

Jednoduše řečeno, pokud vytvoříte proměnnou v terminálovém shellu, bude ztracena, jakmile tento shell opustíte.

Naproti tomu proměnná prostředí ve vašem operačním systému trvá. Tyto proměnné obvykle používají všechna velká písmena, aby se odlišily.

Příkladem toho je vaše uživatelské jméno, které OS zná jako $USER.

[email protected]:~$ echo $USER
christopher

Dobře, takže jste strávili dost času procházením rozdílů mezi proměnnými prostředí a shellu. Co to má společného se zdrojem ? Všechno, opravdu.

Jinak by nebyl žádný rozdíl ve spuštění zdroje a bash . Abych tento bod ilustroval, mám připravenou ještě jednu ukázku.

Zdroj versus Bash

Pokud se nějakou dobu pohybujete kolem Linuxu, možná jste se s těmito příkazy setkali a mysleli si, že dělají totéž. Ostatně oba příkazy lze použít ke spuštění skriptu.

Zdroj funguje v aktuálním shellu, na rozdíl od běžícího bashu, který vytváří nový shell. To není zřejmé, protože se nezobrazují žádná nová okna.

Pokud sledujete, tento bude vyžadovat, abyste napsali velmi jednoduchý skript (říkejme mu echo.sh), který vypadá takto:

#! bin/bash

echo $USER
echo $name

Než ve svém terminálu uděláte cokoliv jiného, ​​přiřaďte své jméno k názvu proměnné.

[email protected]:~$ name=chris

Dále vám ukážu, co se stane, když vyzkoušíte všechny 3 příkazy ve stejném terminálu, ve kterém jste přiřadili svou proměnnou.

[email protected]:~$ bash echo.sh 
christopher

[email protected]:~$ source echo.sh 
christopher
chris
[email protected]:~$ . echo.sh 
christopher
chris

Jak můžete vidět, vaše lokální proměnná nebyla rozpoznána, když jste skript spouštěli pomocí bash .

Obnovení proměnných prostředí pomocí příkazu source

Zdroj lze také použít k aktualizaci proměnných prostředí v aktuálním prostředí. Běžnou aplikací pro tento úkol je aktualizace vašeho bash profilu v aktuálním prostředí.

Uživatel může chtít upravit svůj bash profil, řekněme, vytvořit alias. Za normálních okolností, jakmile uložíte konfiguraci, budete muset otevřít nové okno terminálu, aby se změny projevily.

[email protected]:~$ source .bashrc 

Spuštěním se obnoví nastavení ve vašem aktuálním prostředí, aniž byste museli otevřít nový terminál.

Závěr

Doufáme, že se vám tento návod na zdrojový příkaz líbil. Jako vždy nám prosím dejte vědět své myšlenky v sekci komentářů. Pokud se vám tento příspěvek líbil, sdílejte jej na sociálních sítích pomocí tlačítek níže.


Linux
  1. Jak nainstalovat TBB ze zdroje na Linux a zprovoznit jej

  2. Jak rm funguje? Co dělá rm?

  3. Jak funguje debugger v Linuxu?

  1. Co je Makefile a jak funguje?

  2. Co je příkaz Chown v Linuxu a jak jej používat

  3. Co je NGINX? Jak to funguje?

  1. Co je webový server a jak webový server funguje?

  2. Jak zjistit, co dělá příkaz Linuxu

  3. Co je DNS a jak funguje?