Quando utilizzo la shell bash, a volte conservo le variabili di ambiente in un file di testo di cui copio / incolgo il contenuto, ad esempio export.txt:
export FOO=bar
export FIZZ=buzz
Qualcuno mi ha mostrato invece di copiare / incollare, potrei digitare nel terminale
. exports.txt
che avrebbe lo stesso effetto di copia / incolla.
Qual è il meccanismo con cui funziona questo comando 'dot space nomefile'? È difficile pensare ai termini di ricerca per questo.
Voglio capire cosa sta succedendo e i dettagli più generali di ciò che sta facendo questo one-liner.
'. ' args
, con virgolette singole o doppie. Altrimenti lo spazio non quotato viene consumato da bash quando analizza la linea in token (vedere "suddivisione delle parole" nel manuale di bash).
.
è source
, che significa letteralmente "comandi di origine da questo file", almeno per me.
help .
Questo è così breve che il motore di Stack Exchange pensa che sia troppo corto per essere un commento.