Ak ste vo svete Linuxu nováčikom, možno ste už počuli o príkazoch, ktoré vykonávajú rôzne úlohy, ale niektoré ako príkaz „source“ sa môžu na prvý pohľad zdať trochu mätúce. Nebojte sa; rozoberme si to krok za krokom.
Čo je to Zdrojový príkaz?
Zdrojový príkaz v Linuxe je ako čarovný prútik, ktorý vám umožňuje priniesť príkazy zo súboru a použiť ich priamo vo vašom termináli. Je to ako mať knihu receptov a byť schopní okamžite použiť recepty bez ich kopírovania.
Príkaz „source“ je vstavaná funkcia shellu, určená na vykonávanie príkazov uložených v súbore priamo v aktuálnom prostredí shellu. Keď použijete príkaz „source“, prečíta obsah zadaného súboru, zvyčajne postupnosť príkazov, a vykoná ich, ako keby boli zadané priamo do terminálu. Tento proces prebieha v kontexte aktuálnej relácie shellu bez toho, aby sa vytvoril nový proces alebo interpret. Ak sú s príkazom „source“ poskytnuté nejaké argumenty, odovzdajú sa ako pozičné parametre príkazom v rámci zdrojového súboru. Pozičné parametre aktuálnej relácie shellu však zostanú nezmenené, pokiaľ nie sú explicitne upravené príkazmi v rámci zdrojového súboru. Príkaz „source“ hľadá zadaný súbor v adresároch uvedených v $PATH premenná prostredia . Ak sa súbor nenájde v žiadnom z týchto adresárov, bude hľadať v aktuálnom adresári. Je dôležité poznamenať, že príkaz „source“ neponúka žiadne možnosti; jeho jediným argumentom je názov súboru, ktorý sa má získať
Syntax zdrojového príkazu v systéme Linux
Syntax zdrojového príkazu je jednoduchá:
source FILENAME>
Alebo jeho ekvivalent:
. filename>
Tu sa „názov súboru“ vzťahuje na súbor obsahujúci príkazy, ktoré sa majú získať.
Príklad zdrojového príkazu v systéme Linux
zdrojový príkaz v systéme Linux s príkladmi
- Vykonávanie skriptov Shell:
- Úprava premenných prostredia:
- Načítavajú sa konfiguračné súbory:
- Definovanie funkcií shellu:
Vykonávanie skriptov Shell:
Jedným z primárnych prípadov použitia zdrojového príkazu je spustenie skriptov shellu v aktuálnom prostredí shellu. To umožňuje skriptu priamo manipulovať s premennými, funkciami a ďalšími funkciami shellu.
Predstavte si, že máte skript shellu s názvom „myscript.sh“, ktorý nastavuje premennú a potom opakuje jej hodnotu:
# myscript.sh
#!/bin/bash
# Nastavte premennúzoznam šípokMY_VARIABLE=Dobrý deň, z myscript.sh
# Echo premennej
echo $MY_VARIABLE
Teraz použite príkaz source na vykonanie tohto skriptu v rámci aktuálneho prostredia:
source myscript.sh>

Spustenie skriptu shellu
arraylist a linkedlist
Vysvetlenie:
- Príkaz source vykonáva príkazy v rámci „myscript.sh“ priamo v aktuálnom prostredí shellu.
- Premenná „MY_VARIABLE“ je nastavená v rámci „myscript.sh“ a opakuje sa, čím vytvára výstup v rámci aktuálnej relácie shellu.
Úprava premenných prostredia:
Príkaz source je rozhodujúci pre úpravu premenných prostredia prúdu škrupina relácie. Toto je obzvlášť užitočné, keď skript potrebuje exportovať premenné, ktoré ovplyvňujú prostredie nadradeného shellu.
# environment_setup.sh
#!/bin/bash
# Exportujte premennúexport MY_ENV_VARIABLE=Toto je moja premenná prostredia
Teraz pomocou príkazu source upravíme premenné prostredia v rámci aktuálneho prostredia:

Úprava premennej prostredia
source environment_setup.sh>
Ak chcete overiť zmeny, môžete použiť premennú prostredia:
echo $MY_ENV_VARIABLE>
Vysvetlenie:
- Zdrojový príkaz spustí skript ‚environment_setup.sh‘, ktorý exportuje premennú ‚MY_ENV_VARIABLE‘.
- Po získaní zdroja skriptu sa premenná prostredia „MY_ENV_VARIABLE“ sprístupní v aktuálnej relácii shellu, o čom svedčí aj jej hodnota.
Načítavajú sa konfiguračné súbory:
Mnoho aplikácií v systéme Linux sa spolieha na konfiguračné súbory. Pomocou príkazu source je možné tieto konfiguračné súbory načítať priamo do aktuálneho shellu, čím sa zabezpečí, že zmeny sa prejavia okamžite.
Zvážte situáciu, v ktorej ste vykonali zmeny v konfiguračnom súbore „.bashrc“, ako je napríklad pridanie nového aliasu:
# Pridajte alias do .bashrc
alias myalias=’ls -la’
Teraz pomocou príkazu source načítame aktualizovaný konfiguračný súbor do aktuálneho shellu:
source ~/.bashrc>
Teraz môžete použiť novo pridaný alias „myalias“:
myalias>

Načítava sa konfiguračný súbor
Vysvetlenie:
- Príkaz source načíta aktualizovaný súbor „.bashrc“ do aktuálnej relácie shellu, pričom zahŕňa všetky zmeny vykonané v aliasoch alebo iných konfiguráciách.
- Po získaní zdroja „.bashrc“ sa novo pridaný alias „myalias“ sprístupní na okamžité použitie, čo sa ukázalo pri jeho spustení a uvedení obsahu aktuálneho adresára.
Definovanie funkcií shellu:
Funkcie shellu definované v skripte je možné sprístupniť v aktuálnej relácii shellu tak, že získate skript, ktorý tieto funkcie obsahuje.
Predpokladajme, že máte skript s názvom „my_functions.sh“, ktorý definuje funkciu shellu:
# my_functions.sh
#!/bin/bash
# Definujte funkciu shellumoja_funkcia() {
echo Toto je moja vlastná funkcia
}parameter v shell skripte
Teraz pomocou príkazu source sprístupníme túto funkciu v aktuálnom prostredí:
source my_functions.sh>
Teraz môžete funkciu volať priamo v rámci shellu:
my_function>

Definovanie funkcií shellu
Vysvetlenie:
- Zdrojový príkaz spustí skript „my_functions.sh“, ktorý definuje funkciu shellu s názvom „my_function“.
- Po získaní zdroja skriptu sa funkcia „my_function“ sprístupní na okamžité použitie v rámci aktuálnej relácie shellu, čo sa ukázalo pri jej volaní a odozve na jej správu.
Záver
Na záver, príkaz „source“ v Linuxe slúži ako výkonný nástroj na bezproblémovú integráciu príkazov, nastavení a funkcií z externých súborov priamo do aktuálneho prostredia shellu. Príkaz „source“, ktorý funguje ako prepojenie medzi reláciou terminálu a súbormi obsahujúcimi inštrukcie, vykonáva príkazy v rámci špecifikovaného súboru, ako keby boli zadané priamo do terminálu. To umožňuje dynamickú modifikáciu premenných prostredia, vykonávanie skriptov shellu, načítanie konfiguračných súborov a dostupnosť vlastných funkcií shellu v rámci aktuálnej relácie shellu. Využitím možností „zdrojového“ príkazu môžu používatelia Linuxu zvýšiť produktivitu a efektivitu v úlohách správy a vývoja systému, čo prináša novú úroveň ovládania a flexibility príkazového riadku.