Puoi farlo semplicemente dichiarandolo come nuovo nella riga di comando o dichiarandolo nuovamente. Ad esempio, se vuoi aggiungere ~/testfolder
alla tua variabile path, puoi semplicemente inserirla nel tuo terminale corrente (questo è solo un esempio):
PATH="$HOME/testfolder:$PATH"
Questo ovviamente lo cambierà solo per il momento in cui hai detto che la sessione terminale è aperta. Si noti l' $
utilizzo qui, lo si lascia fuori per la dichiarazione, ma se si desidera visualizzarlo è necessario aggiungere $
per espandere il suo contenuto.
Se si desidera dichiararli più duraturi e generali, è possibile aggiungerli nel file ~/.bashrc
(solo per l'utente) o in /etc/bash.bashrc
(a livello di sistema), ad esempio se si desidera che vengano conteggiati solo per te o per tutti gli utenti. Un'altra opzione è aggiungerlo al tuo .profile
file (solo per te stesso) dove sarà praticabile dal momento in cui accedi. Puoi farlo con echo
ad esempio se sei sicuro che questa variabile non sia già impostata o se ne crei di nuovi (solo un esempio):
echo "variable=value" >> /path/filename
Se tuttavia vuoi modificare un file al di fuori della tua directory utente, il che è il caso quando vuoi modificarlo, /etc/bash.bashrc
devi usare sudo
e quindi non puoi semplicemente usare un 'documento qui' poiché questo non funzionerebbe, invece usa una riga come sotto:
echo "variable=value" | sudo tee -a /path/filename
Se la variabile tuttavia esiste già, puoi cambiarla con il sed
comando (anche solo un esempio):
sed -i.bak 's/variable=value/variable=new-value/' /path/filename
Ciò modificherà la variabile nel file ma ne creerà un backup prima della modifica. Se cambi file al di fuori della tua directory utente con sed, devi usarli sudo
nella maggior parte dei casi, quindi la linea sarebbe:
sudo sed -i.bak 's/variable=value/variable=new-value/' /path/filename
Anche la rimozione di una variabile da un file può essere eseguita sed
, lasciando vuota la seconda parte della regex:
sed -i.bak 's/variable=value//' /path/filename
Se sei interessato a quali variabili di ambiente sono impostate, puoi utilizzare il env
comando per elencarle ( set -o posix ; set ) | less
o sh -c set
. Tutti e tre forniscono varie quantità di output, ( set -o posix ; set ) | less
restituendo la maggior parte delle variabili che sono effettivamente impostate.
( set -o posix ; set )
è più semplice da diresh -c set
. Funzionerà anche sesh
è un link simbolico abash
(che normalmente non è nelle moderne versioni di Ubuntu).