Dacă sunteți nou în lumea Linux, este posibil să fi auzit despre comenzi care efectuează diverse sarcini, dar unele precum comanda „sursă” ar putea părea puțin confuze la început. Nu vă faceți griji; haideți să o descompunem pas cu pas.
Ce este comanda sursă?
Comanda sursă în Linux este ca o baghetă magică care vă permite să introduceți comenzi dintr-un fișier și să le utilizați direct în terminal. Este ca și cum ai avea o carte de rețete și poți folosi rețetele imediat, fără a le copia.
Comanda „sursă” este o caracteristică încorporată a shell-ului, concepută pentru a executa comenzi stocate într-un fișier direct în mediul shell curent. Când utilizați comanda „sursă”, aceasta citește conținutul fișierului specificat, de obicei o secvență de comenzi, și le execută ca și cum ar fi tastate direct în terminal. Acest proces are loc în contextul sesiunii shell curente, fără a genera un nou proces sau interpret. Dacă orice argument este furnizat cu comanda „sursă”, ele sunt transmise ca parametri de poziție comenzilor din fișierul sursă. Cu toate acestea, parametrii de poziție ai sesiunii curente de shell rămân neschimbați dacă nu sunt modificați în mod explicit de către comenzile din fișierul sursă. Comanda „sursă” caută fișierul specificat în directoarele listate în $PATH variabilă de mediu . Dacă fișierul nu este găsit în niciunul dintre aceste directoare, va căuta în directorul curent. Este important de reținut că comanda „sursă” nu oferă nicio opțiune; singurul său argument este numele fișierului care urmează să fie preluat
Sintaxa comenzii sursă în Linux
Sintaxa comenzii sursă este simplă:
source FILENAME>
Sau echivalentul său:
. filename>
Aici, „nume fișier” se referă la fișierul care conține comenzile care urmează să fie preluate.
Exemplu de comandă sursă în Linux
Comanda sursă în Linux cu exemple
- Executarea scripturilor Shell:
- Modificarea variabilelor de mediu:
- Încărcarea fișierelor de configurare:
- Definirea funcțiilor Shell:
Executarea scripturilor Shell:
Unul dintre cazurile de utilizare principale ale comenzii sursă este executarea de scripturi shell în mediul shell curent. Acest lucru permite scriptului să manipuleze direct variabile, funcții și alte caracteristici de shell.
Imaginați-vă că aveți un script shell numit „myscript.sh” care setează o variabilă și apoi ecou valoarea acesteia:
# myscript.sh
#!/bin/bash
# Setați o variabilăsortați o matrice în javaMY_VARIABLE=Bună ziua, de pe myscript.sh
# Ecou variabila
echo $MY_VARIABLE
Acum, să folosim comanda sursă pentru a executa acest script în shell-ul curent:
source myscript.sh>

Executarea unui script shell
Explicaţie:
- Comanda sursă execută comenzile din „myscript.sh” direct în mediul shell curent.
- Variabila „MY_VARIABLE” este setată în „myscript.sh” și ecou, producând rezultatul în cadrul sesiunii curente de shell.
Modificarea variabilelor de mediu:
Comanda sursă este crucială pentru modificarea variabilelor de mediu ale curentului coajă sesiune. Acest lucru este util în special atunci când un script trebuie să exporte variabile care afectează mediul shell părinte.
# environment_setup.sh
#!/bin/bash
# Exportați o variabilăexport MY_ENV_VARIABLE=Aceasta este variabila mea de mediu
Acum, să folosim comanda sursă pentru a modifica variabilele de mediu din shell-ul curent:

Modificarea variabilei de mediu
source environment_setup.sh>
Pentru a verifica modificările, puteți repeta variabila de mediu:
citește fișierele json
echo $MY_ENV_VARIABLE>
Explicaţie:
- Comanda sursă execută scriptul „environment_setup.sh”, care exportă variabila „MY_ENV_VARIABLE”.
- După aprovizionarea cu scriptul, variabila de mediu „MY_ENV_VARIABLE” devine disponibilă în sesiunea curentă de shell, după cum este evidențiată prin ecoul valorii acesteia.
Încărcarea fișierelor de configurare:
Multe aplicații din Linux se bazează pe fișierele de configurare. Folosind comanda sursă, aceste fișiere de configurare pot fi încărcate direct în shell-ul curent, asigurându-se că modificările au efect imediat.
Luați în considerare un scenariu în care ați făcut modificări fișierului de configurare „.bashrc”, cum ar fi adăugarea unui nou alias:
# Adăugați un alias la .bashrc
alias myalias=’ls -la’
Acum, să folosim comanda sursă pentru a încărca fișierul de configurare actualizat în shell-ul curent:
source ~/.bashrc>
Acum, puteți utiliza alias-ul nou adăugat „myalias”:
myalias>

Se încarcă fișierul de configurare
Explicaţie:
- Comanda sursă încarcă fișierul actualizat „.bashrc” în sesiunea curentă de shell, încorporând orice modificări aduse alias-urilor sau altor configurații.
- După aprovizionarea cu „.bashrc”, aliasul nou adăugat „myalias” devine disponibil pentru utilizare imediată, așa cum se demonstrează prin executarea lui și listarea conținutului directorului curent.
Definirea funcțiilor Shell:
Funcțiile shell definite într-un script pot fi puse la dispoziție în sesiunea shell curentă prin aprovizionarea cu scriptul care conține acele funcții.
Să presupunem că aveți un script numit „my_functions.sh” care definește o funcție shell:
idee intellij vs eclipsă
# my_functions.sh
#!/bin/bash
# Definiți o funcție shellfunctia_mea() {
echo Aceasta este funcția mea personalizată
}
Acum, să folosim comanda sursă pentru a face această funcție disponibilă în shell-ul curent:
source my_functions.sh>
Acum, puteți apela funcția direct în shell:
my_function>

Definirea funcțiilor Shell
Explicaţie:
- Comanda sursă execută scriptul „my_functions.sh”, care definește o funcție shell numită „my_function”.
- După aprovizionarea cu scriptul, funcția „my_function” devine disponibilă pentru utilizare imediată în cadrul sesiunii curente de shell, așa cum se demonstrează apelând-o și repetându-i mesajul.
Concluzie
În concluzie, comanda „sursă” în Linux servește ca un instrument puternic pentru integrarea perfectă a comenzilor, setărilor și funcțiilor din fișiere externe direct în mediul shell actual. Acționând ca un canal între sesiunea terminalului și fișierele care conțin instrucțiuni, comanda „sursă” execută comenzile din fișierul specificat ca și cum ar fi tastate direct în terminal. Acest lucru permite modificarea dinamică a variabilelor de mediu, execuția scripturilor shell, încărcarea fișierelor de configurare și disponibilitatea funcțiilor shell personalizate în cadrul sesiunii shell curente. Valorificând capacitățile comenzii „sursă”, utilizatorii Linux pot spori productivitatea și eficiența în sarcinile de administrare și dezvoltare a sistemului, introducând un nou nivel de pricepere și flexibilitate a liniei de comandă.