/usr/sbin
/bin/usr/locale/cestino
/usr/locale/cestino
/bidone
/usr/cestino
/snap/cestino
/sbin
/USR/Games
/USR/Local/Games
Un file con autorizzazioni eseguibili in una di quelle directory può essere eseguito da qualsiasi posizione all'interno del terminale Linux.
Quindi, la domanda pone, come fa la shell Linux a sapere dove cercare i programmi? Non inizia la ricerca dalla directory corrente o in qualsiasi luogo casuale nel filesystem. Il guscio si basa sul file $ Path variabile.
Qual è la variabile $ path?
$ Path è una variabile di ambiente che indica la shell dove individuare il file eseguibile. Esistono varie directory definite in $ Path variabile. Per visualizzare directory nel tuo $ Path, Esegui il comando:
$ echo $ percorso
Per individuare la directory in cui si trova un eseguibile comando, utilizzare il Quale comando come segue
$ quale comando
Ad esempio, per individuare dove l'eseguibile per il PWD comando, eseguire il comando:
$ quale pwd
Dall'output, possiamo vedere che l'eseguibile risiede nel /bidone directory. Per il tocco comando, l'eseguibile risiede nel /usr/cestino directory.
Come aggiungere una directory a $ path
Supponiamo di avere un semplice script di shell chiamato Saluti.sh che stampe "Ciao mondo"Posto in /Home/James/Files directory. Per impostazione predefinita, la directory non è ancora definita in $ Path variabile. Per eseguire lo script da qualsiasi posizione o directory, è necessario specificare il percorso assoluto allo script. Ora, questo può essere ingombrante e richiesto dal tempo.
Per eseguire lo script a livello globale (indipendentemente dalla tua posizione nel filesystem) senza specificare il percorso completo dello script, è necessario aggiungere la directory contenente lo script al $ Path variabile usando la sintassi di seguito.
$ Export Path = $ Path:/Path/to/Directory/with/File
In questo caso, il comando sarà:
$ Export Path = $ Path:/Home/James/Files
Dovresti ora essere in grado di chiamare o eseguire lo script da qualsiasi directory all'interno del sistema Linux senza specificare il percorso assoluto allo script come mostrato.
Come aggiungere permanentemente la directory alla variabile $ path
Il percorso che abbiamo appena definito a $ Path è solo temporaneo e non persiste quando si chiude il terminale o riavvia il sistema. Funziona solo nella sessione di shell corrente. Se esci e lanci un'altra sessione, ti imbatterai nell'errore come mostrato.
Per persistere le modifiche, definire la variabile $ path in ~.Bashrc file di configurazione. Per raggiungere questo obiettivo, aprire il file di configurazione.
$ sudo vim ~/.Bashrc
Quindi aggiungi la riga come mostrato.
$ Export Path = "$ Path:/Home/James/Files"
Dopodiché, salva ed esci. Per caricare le nuove modifiche, invoca il comando di origine come segue:
$ fonte ~/.Bashrc
Per verificare l'aggiunta della directory a $ Path, eseguire il comando come mostrato.
$ echo $ percorso
Avvolgendo
E lì ce l'hai, ragazzi! Siamo riusciti ad aggiungere con successo la directory a $ percorso su Linux. Come hai visto, è abbastanza conveniente e semplice, soprattutto se chiamerai regolarmente lo script o l'applicazione dalla shell. Gli stessi comandi funzionano per qualsiasi sapore Linux.