Come usare il comando Bash Source

Come usare il comando Bash Source

La fonte bash è un comando integrato utilizzato per leggere ed eseguire comandi da un file e, in alcuni casi, passarli come argomenti nella shell corrente. È possibile caricare funzioni e variabili negli script di shell di corrente con il comando di origine. Inoltre, è possibile utilizzare il comando di origine sul terminale o in uno script bash, in particolare per caricare funzioni e variabili da altre funzioni.

Se usato nel terminale per eseguire uno script determinato, lo script viene eseguito nella stessa shell da dove viene fornito. Pertanto, lo script può accedere a tutte le variabili nella shell in cui sono state provenienti. In questo caso, la fonte sostituisce il periodo (.) usato quando si esegue uno script bash.

Tuttavia, se si esegue semplicemente uno script digitando il suo nome o usando il comando bash, viene creata una nuova istanza e lo script può accedere solo alle variabili esportate o a quelle nella shell genitore.

Come utilizzare il comando di origine

È possibile utilizzare il comando di origine quando si lavora con gli script bash in vari modi.

Eseguire le funzioni sul terminale

Se hai uno script bash, puoi usare fonte per eseguirlo invece di usare un periodo. La sintassi per quello è mostrata di seguito.

$ source file-name

Guarda l'esempio seguente, dove abbiamo eseguito uno script bash usando la sorgente e il periodo.

Le due uscite sono le stesse nell'esecuzione dello script. Tuttavia, con l'origine, è possibile utilizzare la corrente e le variabili genili, anche quelle definite, senza usare il esportare parola chiave.

Importazione di funzioni su un altro script

Puoi anche eseguire funzioni in un altro script bash per creare una libreria di funzioni. Facciamo una sceneggiatura chiamata Demo1.sh con una funzione che stampa il tempo di attività.

Crea un altro script, verificare.sh. Se avessimo bisogno di accedere alla funzione da un altro script bash, potremmo ottenere questo usando il comando sorgente. Prima di origine il nome del file.

Una volta fatto ciò, è possibile procedere a utilizzare le funzioni dall'altro script sullo script corrente.

È possibile eseguire lo script sul terminale per confermare che funziona.

Importazione di funzioni sul terminale

Puoi anche Importa una funzione nella shell corrente. Per fare ciò, fai per primo il file.

Una volta importato il file, usa le sue funzioni sul terminale.

Aggiornamento dei valori variabili

Supponiamo che tu sia necessario aggiornare i valori delle variabili in un determinato script indipendentemente dalla sua posizione. In tal caso, è possibile ottenere lo script, quindi aggiornare la variabile senza usare il esportare comando. In questo esempio, stiamo aggiornando uno script denominato Linuxhint.sh

Iniziamo approfondendo il file e possiamo farlo aggiungendo il suo percorso completo.

Una volta che l'abbiamo acquisito, vai avanti e aggiorna la variabile.

Eseguire lo script utilizzando il comando sorgente per verificare gli aggiornamenti.

Passando variabili ambientali

Quando si utilizza la fonte, è anche possibile importare variabili ambientali quando si scrive uno script. È possibile scegliere di leggere e impostare varie variabili ambientali o raccogliere qualsiasi variabile dal file importato e utilizzarlo nel tuo script.

In tal caso, tutto ciò che devi fare è procurarsi il percorso della variabile ambientale; Da lì, puoi usare una delle sue funzioni.

Ad esempio, creiamo uno script che fonda il ~/. Bashrc e ottiene un valore dalla variabile ambientale importata.

L'esecuzione dello script fornisce un valore dal file variabile ambientale importato, come mostrato nell'immagine seguente.

Questi sono gli usi comuni del comando Bash Source.

Conclusione

Il comando di origine è un utile comando bash che ti consente di lavorare facilmente con gli script. Abbiamo visto come puoi usarlo per eseguire script bash, importare funzioni, aggiornare le variabili e passare le variabili ambientali da un file. Prova a utilizzare il file di origine seguendo gli esempi forniti nell'articolo e se rimani bloccato, fare riferimento alla pagina Man per una maggiore chiarezza.