In Linux, il comando cd è uno dei comandi più utilizzati. Mentre la maggior parte degli utenti limita l'uso del cd alla base, il comando cd ha una vasta gamma di altre funzionalità. Change Directory (cd) è un comando che consente di passare facilmente dalla directory corrente a qualsiasi altra directory.
In questo tutorial parleremo dell'utilità della riga di comando cd in dettaglio con esempi .
Comando cd
cd è una shell incorporata che utilizza la variabile di ambiente della shell per determinare quali informazioni sono necessarie per l'operazione. Viene utilizzato per modificare la directory di lavoro corrente.
Quando accedi a un file system, puoi utilizzare la scheda per completare automaticamente i nomi delle directory. Devi disporre delle autorizzazioni eseguibili su una directory per passare a quella directory.
Sintassi:
$ cd [options] [path]
Le opzioni nella sintassi rappresentano l'argomento passato con il comando e il percorso è la directory del percorso assoluto o relativo.
Quando usi cd senza inserire alcun argomento, quel comando cd ti porterà alla tua home directory.
Sintassi:
$ cd
Ad esempio:
kali@kali:~/Desktop/Sublist3r$ cd
kali@kali:~$
Qui, siamo passati dalla cartella alla directory home.
Percorsi assoluti e relativi
È possibile utilizzare percorsi assoluti o relativi per definire una directory in cui è necessario modificare. Devi conoscere la differenza tra loro prima di poter utilizzare il comando cd nella sua piena estensione.
Il percorso assoluto è un percorso completo della directory che inizia con la cartella /(root) mentre il percorso relativo è derivato dalla directory di lavoro corrente.
Per impostazione predefinita, la directory di lavoro corrente è impostata sulla directory home quando ci si connette al sistema Linux.
Supponi di essere nella tua home directory e di voler cambiare la directory in /Downloads. Possiamo navigare nella directory /Downloads in due modi:usando il percorso relativo o il percorso assoluto.
Nel percorso relativo, digita semplicemente cd insieme al nome del percorso senza una barra (/)
Sintassi:
$ cd Downloads
È un percorso assoluto della directory se il percorso viene fornito utilizzando una barra (/).
Sintassi:
$ cd /home/username/Downloads/
Uscita:
kali@kali:~$ cd /home/kali/Downloads/
kali@kali:~/Downloads$
Passa alla home directory
La directory /home su un sistema Linux contiene i file personali, le applicazioni e le sottocartelle di un utente. Puoi semplicemente eseguire il comando cd senza passare alcun argomento se la variabile ambientale $HOME è impostata sul percorso della tua home directory. In caso contrario, alla directory home è assegnato un carattere tilde (~). Questo può essere passato con il comando cd per cambiare la directory di lavoro corrente in /home senza specificare il percorso completo della tua directory home (/home/nomeutente).
Per tornare direttamente alla tua home directory, puoi usare il seguente comando.
Sintassi:
$ cd ~
Uscita:
kali@kali:~/Downloads$ cd ~
kali@kali:~$
Passa alla directory home di un altro utente
Sintassi:
$ cd ~[username]
Uscita:
kali@kali:~$ cd ~linux/
kali@kali:/linux$
Passa alla directory Download che si trova all'interno della directory home
$ cd ~/Downloads
Uscita:
kali@kali:/linux$ cd ~/Downloads/
kali@kali:~/Downloads$
Passa alla cartella principale
Nel tuo file system, la directory principale è la prima directory. Il carattere slash (/) viene utilizzato insieme al comando cd per passare alla directory principale.
Sintassi:
cd /
Uscita:
kali@kali:~/Downloads$ cd /
kali@kali:/$
Passa alla directory di lavoro precedente
Quando si lavora con più directory contemporaneamente, è possibile utilizzare il trattino (-) per passare rapidamente alla directory di lavoro precedente.
Sintassi:
$ cd -
Uscita:
kali@kali:~/Desktop/Sublist3r$ cd -
/home/kali/Desktop
kali@kali:~/Desktop$
Passa alla directory principale
La directory di lavoro corrente è rappresentata da un singolo punto (.) nei sistemi operativi Linux. La directory padre, o la directory sopra quella corrente, è rappresentata da due punti (..). La directory principale, in parole povere, è la directory che contiene una o più sottodirectory.
Se scrivi cd .
comando, cambierà nella directory corrente, il che significa che il percorso rimarrà lo stesso.
Il comando cd insieme ai doppi punti (..) ti consente di cambiare la tua directory di lavoro corrente nella directory di lavoro principale un livello sopra la tua directory attuale.
Sintassi:
$ cd ..
Uscita:
kali@kali:/usr/local/lib$ cd ..
kali@kali:/usr/local$
Per spostare due livelli al di sopra della directory di lavoro, è possibile utilizzare la seguente sintassi.
Sintassi:
$ cd ../../
Uscita:
kali@kali:/usr/local/lib$ cd ../../
kali@kali:/usr$
È inoltre possibile specificare una directory un livello sopra la directory di lavoro corrente.
Sintassi:
$ cd ../[folder]
Uscita:
kali@kali:/usr/local$ cd ../sbin/
kali@kali:/usr/sbin$
Cambia al nome della directory con spazi
Ogni cartella sul tuo sistema non sarà nominata con una sola parola. Se contiene uno spazio, specificare il nome della directory risulterà in un errore.
Ad esempio:
$ cd /home/kali/Desktop/Important Files
Uscita:
kali@kali:~$ cd /home/kali/Desktop/Important Files
bash: cd: too many arguments
kali@kali:~$
Per evitare l'errore, racchiudere il percorso tra virgolette o utilizzare il carattere barra rovesciata (\) per evitare lo spazio.
Utilizzo della barra rovesciata (/)
Ad esempio:
$ cd /home/kali/Desktop/Improtant\ Files/
Uscita:
kali@kali:~$ cd /home/kali/Desktop/Improtant\ Files/
kali@kali:~/Desktop/Improtant Files$
Usando le virgolette (' ') (" ")
Ad esempio:
$ cd /home/kali/Desktop/'Improtant Files'/
$ cd /home/kali/Desktop/"Improtant Files"/
Uscita:
kali@kali:~$ cd /home/kali/Desktop/'Improtant Files'/
kali@kali:~/Desktop/Improtant Files$
kali@kali:~/Desktop/Improtant Files$ cd
kali@kali:~$ cd /home/kali/Desktop/"Improtant Files"/
kali@kali:~/Desktop/Improtant Files$
Conclusione
In questo tutorial, abbiamo imparato a conoscere il comando cd e come usarlo per navigare tra più directory. Ti consente di passare rapidamente a directory diverse utilizzando caratteri e argomenti diversi.