Cos'è una variabile PATH
La variabile di ambiente PATH memorizza un elenco di posizioni separate da due punti in cui cercare un comando/applicazione quando ne viene eseguito uno dalla riga di comando. Ad esempio, quando si esegue un comando come ls o vi, il sistema controlla tutte le directory elencate nel PATH (in ordine da sinistra a destra) per trovare l'eseguibile o lo script che l'utente sta tentando di eseguire. Ciò consente di eseguire comandi senza conoscerne la posizione nel file system. Di seguito è riportato un esempio di variabile PATH nei sistemi Linux.
# echo $PATH /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
Per impostazione predefinita, il PERCORSO è già impostato per cercare nelle seguenti directory:
/usr/local/sbin /usr/local/bin /sbin /bin /usr/sbin /usr/bin
Come controllare il valore della variabile PATH
Per controllare l'elenco dei percorsi dell'utente corrente, utilizzare uno dei seguenti comandi:
# set | grep PATH PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
# echo $PATH /usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
# env | grep PATH PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
Aggiunta di una nuova directory alla variabile PATH Per un utente specifico
È possibile aggiungere una nuova directory al PERCORSO di un utente modificando ~/.bash_profile o ~/.bashrc file nella directory home dell'utente. Ad esempio, il PATH è normalmente impostato con righe simili alle seguenti in ~/.bash_profile:
# vi ~/.bash_profile PATH=$PATH:$HOME/bin export PATH
Per aggiungere una nuova directory al percorso (ad es. '/new_path'), quindi modificare la riga PATH aggiungendola alla fine:
# vi ~/.bash_profile PATH=$PATH:$HOME/bin:/new_path ### Notice the colon ':' between the directories
Quindi copia le righe PATH ed EXPORT da ~/.bash_profile a ~/.bashrc per assicurarti che il percorso venga impostato in modo appropriato indipendentemente da come l'utente acceda alla macchina. Dopo queste modifiche, il PERCORSO includerà ora la directory '/programmi' la prossima volta che l'utente accede al sistema.
Applica le modifiche alla condivisione corrente
Per applicare il PERCORSO solo al terminale bash corrente (senza effettuare il logout), è possibile eseguire il comando seguente:
$ . ~/.bash_profileNOTA :È meglio disconnettersi e quindi riconnettersi in modo che l'intero ambiente ora lo veda.
Aggiunta nuova directory alla variabile PATH per tutti gli utenti
Il percorso globale può essere aggiornato da:
1. Aggiunta di un nuovo file denominato /etc/profile.d/mypath.sh da eseguire all'accesso per tutti gli utenti, contenente:
PATH=$PATH:/new_path
(Nota:questo metodo interesserà tutti gli utenti (utenti esistenti e utenti futuri).
2. Modifica del file denominato /etc/skel/.bash_profile allo stesso modo discusso più sopra in questa soluzione.
- I file in /etc/skel/ verranno copiati nella home directory di qualsiasi nuovo utente al momento della loro creazione.
- Nota:questo metodo non avrà effetto su nessun account utente esistente.