Android

Comanda sursă Bash

Bash Scripting : Source and Fork your Scripts

Bash Scripting : Source and Fork your Scripts

Cuprins:

Anonim

Comanda source citește și execută comenzi din fișierul specificat ca argument în mediul shell actual. Este util să încărcați funcții, variabile și fișiere de configurare în scripturi shell.

source este un shell integrat în Bash și alte shell-uri populare utilizate în sistemele de operare Linux și UNIX. Comportamentul său poate fi ușor diferit de la coajă la coajă.

Sintaxa comenzii sursă

Sintaxa pentru comanda source este următoarea:

source FILENAME. FILENAME

  • source și . (o perioadă) sunt aceeași comandă. Dacă FILENAME nu este o cale completă către un fișier, comanda va căuta fișierul în directoarele specificate în $PATH mediu $PATH . Dacă fișierul nu se găsește în $PATH , comanda va căuta fișierul în directorul curent. În cazul în care sunt date vreun ARGUMENTS , vor deveni parametri poziționali pentru FILENAME . Dacă FILENAME există codul de ieșire al comenzii source este 0 , în caz contrar dacă fișierul nu este găsit, acesta va reveni 1 .

Exemple de comandă sursă

În această secțiune, vom analiza câteva exemple de bază despre cum să utilizăm comanda source .

Funcții de aprovizionare

În acest exemplu, vom crea un fișier care include o funcție bash care verifică dacă utilizatorul care rulează scriptul este rădăcină și, dacă nu, arată un mesaj și iese din script.

functions.sh

check_root () { if]; then echo "This script must be run as root" exit 1 fi }

Acum, în fiecare dintre scripturile dvs. care trebuie să fie rulate numai de către utilizatorul root, pur și simplu sursați fișierul functions.sh și apelați funcția:

#!/usr/bin/env bash source functions.sh check_root echo "I am root"

Avantajul acestei abordări este că scripturile dvs. vor fi mai mici și mai lizibile, puteți reutiliza același fișier funcțional ori de câte ori este nevoie și, în cazul în care trebuie să modificați o funcție, veți edita un singur fișier.

Fișier de configurare Bash

Cu comanda source , puteți citi, de asemenea, variabile dintr-un fișier. Variabilele trebuie setate folosind sintaxa Bash, VARIABLE=VALUE .

Să creăm un fișier de configurare a testului:

config.sh

VAR1="foo" VAR2="bar"

În scriptul bash folosiți comanda source pentru a citi fișierul de configurare:

#!/usr/bin/env bash source config.sh echo "VAR1 is $VAR1" echo "VAR2 is $VAR2"

VAR1 is foo VAR2 is bar

Concluzie

În acest ghid, ați învățat cum să utilizați comanda source încorporată în scripturile dvs. shell.

terminalul bash