back to top

Muoversi nel file system di Linux: pwd e cd

In questa lezione della nostra Guida a Linux vedremo di prendere un po’ di confidenza con alcuni dei comandi fondamentali della shell di Linux: pwd, cd e ls. I primi due comandi vengono trattati insieme in quanto hanno uno scopo comune: muoverci all’interno del file system. Comprendere come utilizzare questi comandi è essenziale per navigare efficacemente nel sistema operativo e ottimizzare il proprio flusso di lavoro.

Comando pwd

Il comando pwd (present working directory) chiede alla macchina di indicarci in quale directory ci troviamo attualmente. Provate a effettuare il login e poi digitate:

pwd

Otterrete come risposta il percorso assoluto della directory in cui vi trovate attualmente. La directory di partenza (quella in cui ci si trova dopo il login) è conosciuta come home directory. Ogni utente ha una propria home directory, solitamente situata in /home/nome_utente.

Bene. Ora sappiamo dove siamo. È possibile utilizzare questo comando in combinazione con altri per comprenderne meglio il contesto, ad esempio dopo aver cambiato directory.

Comando cd

Attraverso il comando cd (change directory) è possibile muoversi tra le directory. Il suo utilizzo è semplicissimo: basta usare il comando seguito dal percorso della directory in cui ci si vuole spostare. Per esempio:

cd /percorso/della/directory/

Et voilà! Ora siete nella directory che avete indicato… non ci credete? Provate a fare pwd per averne conferma. In questo modo potrete verificare che la vostra posizione sia cambiata effettivamente.

Se volete tornare indietro di un livello rispetto al percorso corrente, potete utilizzare il seguente comando:

cd ..

Per tornare alla root (directory principale), invece, digitiamo:

cd /

Linux è case sensitive!

A differenza di Windows, Linux è molto preciso e puntiglioso con i nomi dei comandi, dei file e delle cartelle: il pinguino è case sensitive, cioè distingue tra maiuscole e minuscole! Quindi, ad esempio, per spostarsi nella cartella foto presente nella posizione corrente bisognerà digitare:

cd foto

Viceversa, se scrivessimo:

cd Foto

otterremmo in risposta un errore, poiché Linux non riconosce Foto come la stessa directory di foto.

Come gestire directory con spazi nel nome?

Nel caso in cui il nostro sistema Linux, utilizzato da linea di comando, non permetta il riconoscimento di nomi di file e cartelle nei quali è presente uno spazio, possiamo rimediare con una semplice operazione di escape dello spazio stesso.

Immaginiamo per esempio di voler richiamare una cartella denominata nome cartella; la nostra istruzione sarà plausibilmente simile alla seguente:

cd /var/scripts/nome cartella

Il riconoscimento non sarà possibile per via del fatto che tra i termini nome e cartella è stato digitato uno spazio. Come rimediare? Utilizzando un semplice backslash:

cd /var/scripts/nome\ cartella

In alternativa è possibile operare il quoting dell’intera istruzione, racchiudendo il percorso tra virgolette:

cd "/var/scripts/nome cartella"

In questo modo, Linux interpreterà l’intero percorso come un’unica stringa, permettendo l’accesso alla cartella desiderata.

Conoscere l’utilizzo dei comandi pwd e cd è fondamentale per navigare nel file system di Linux. Non dimenticate di esercitarvi con diversi percorsi e directory per diventare esperti nell’uso della shell. Ogni dettaglio, inclusa la gestione dei caratteri speciali e case sensitivity, riveste un’importanza cruciale nel lavoro quotidiano con Linux. Presto imparerete anche altri comandi utili, come ls, che vi permetterà di visualizzare il contenuto delle directory.

Pubblicità
Massimiliano Bossi
Massimiliano Bossi
Stregato dalla rete sin dai tempi delle BBS e dei modem a 2.400 baud, ho avuto la fortuna di poter trasformare la mia passione in un lavoro (nonostante una Laurea in Giurisprudenza). Adoro scrivere codice e mi occupo quotidianamente di comunicazione, design e nuovi media digitali. Orgogliosamente "nerd" sono il fondatore di MRW.it (per il quale ho scritto centinaia di articoli) e di una nota Web-Agency (dove seguo in prima persona progetti digitali per numerosi clienti sia in Italia che all'estero).