Come usare il comando cd in Linux

Contenuti

Un grafico di una finestra di terminale su un sistema portatile Linux.

Alcuni comandi di Linux sono così familiari che non ci rendiamo nemmeno conto che li stiamo usando. il cd Il comando per cambiare directory è uno di questi. Ci sono alcuni trucchi che possono aiutarti a essere più efficiente con cdOppure puoi sbarazzartene completamente.

Un comando a cui pensi raramente

Sbattere le palpebre tutto il giorno, ogni giorno, ma il più delle volte non te ne rendi conto. A meno che qualcosa non ti entri nell'occhio, raramente pensi a quel piccolo movimento regolare. Alcuni comandi di Linux sono così. In bilico sulla periferia della tua coscienza. Anche quando li usi tutti i giorni, non attirano la tua attenzione perché sono molto piccoli e semplici.

Entro la prima ora di utilizzo di un computer Linux, imparerai ad usare il cd comando incluso con Bash e altre shell. Forse hai avuto precedenti esperienze nell'usarlo su un altro sistema operativo e non hai avuto bisogno di spiegazioni. Cambia la directory di lavoro corrente, verità? Cos'altro c'è da sapere?

Bene, più di quanto pensi. Prossimo, sono inclusi alcuni suggerimenti e suggerimenti che possono migliorare la tua efficienza.

Operazioni CD standard

Per essere completo, Esaminiamo rapidamente gli usi standard di cd.

Se siamo nella home directory, ma vogliamo passare a uno situato a /usr/lib/firefox/browser, e poi tornare alla directory home, possiamo usare i seguenti comandi:

cd /usr/lib/firefox/browser/
cd /home/dave

Non è necessario inserire il percorso completo della directory; puoi usare il completamento automatico. Per ogni parte di un percorso, dopo aver digitato abbastanza lettere per distinguere il nome della directory dagli altri, premi Tab per riempire automaticamente il nome della directory.

Come esempio, digita quanto segue nella riga di comando:

cd /usr/lib/fire

Ora, presione Tab y el shell completará el resto del directorio “Firefox” Per te. Si agrega “/ B” a la ruta y presiona Tab nuevamente, agrega el directorio “browser” al comando.

La shell aggiunge una barra finale in modo da poter ripetere la procedura di completamento della scheda. È anche per questo che c'è una barra nel primo comando. Non ce n'è uno nel secondo perché è stato scritto.

Puoi usare la tilde (~) come un modo abbreviato per tornare rapidamente alla directory home da qualsiasi punto del file system; basta digitare quanto segue:

cd ~

Questi sono esempi di percorsi assoluti, dove fornisci il percorso completo dalla radice del filesystem alla directory di destinazione, per cd.

I percorsi relativi sono referenziati dalla directory di lavoro corrente. Nella directory principale, c'è una directory chiamata work . Puoi usare il tree comando a visualizza l'albero delle directory entro work directory: basta digitare quanto segue:

albero

il work directory contiene una directory chiamata dev . Inoltre c'è una directory chiamata dev nella directory principale del file system. Puoi usare ls insieme a -d (directory) per vedere ognuno di questi. il -hl L'opzione (leggibile dagli umani, lunga lista) indica ls utilizzare unità di facile lettura per le dimensioni delle directory e gli elenchi lunghi.

Se scrivi dev, el shell asume que te refieres al “sviluppo” La virgoletta singola o l'apostrofo della parola. Para forzarlo a mirar el “sviluppo” nella directory principale, basta aggiungere una barra per rappresentare la radice del filesystem, come mostrato di seguito:

ls -d dev -hl
ls -d / dev -hl

il cd il comando si comporta come ls A questo proposito. Se ti riferisci alla directory come dev, come mostrato di seguito, presuppone che si riferisca alla directory in work directory:

sviluppo cd

Senza uno slash, anche i percorsi più lunghi dovrebbero iniziare dalla directory di lavoro corrente, come mostrato di seguito:

cd dev/mobile/android

IMPARENTATO: 15 caratteri speciali che devi conoscere per Bash

Cambia directory con Double Dot

L'identificatore a doppio punto rappresenta la directory principale da cui stai eseguendo in questo momento. Se ti trovi in ​​una sottodirectory profondamente annidata, Puoi usare .. insieme a cd per spostarti nella directory principale in cui ti trovi.

Questo lo sposta in alto di due directory nell'albero delle directory. Se aggiungi altro .. al comando, ti permette di spostare un numero arbitrario di livelli in alto nell'albero delle directory.

Scrivi quanto segue:

cd ..
cd ../..

Puoi anche creare una serie di alias per eseguire queste manovre per te., scrivendo quanto segue:

alias .2="cd ../.."
alias .3="cd ../../.."

Puoi usarli allo stesso modo dei comandi stessi.

Per mantenere coerenti gli alias durante i riavvii del computer, devi aggiungerli al tuo .bashrc oh .bash_aliases procedimento.

IMPARENTATO: Come creare alias e funzioni di shell in Linux

Salta facilmente tra due directory

Il copione (-) è un altro simbolo che ha una funzione speciale. Cambia la tua directory con quella da cui sei appena arrivato.

Per questo esempio, digamos que está en el directorio “C”. Puoi usare cd para cambiar al directoriocuarto”. Quindi, Puoi usare cd - per rimbalzare tra le due directory.

Per fare questo, scrivi quanto segue:

cd ../avanti

cd –

cd –

Il nome della directory in cui ti stai spostando appare prima di spostarti ad essa.

IMPARENTATO: Come usare pushd e popd in Linux

Un altro tipo di parente

El shell utiliza el directorio de trabajo actual como directorio “radice” o base para las rutas relativas. Puoi usare il CDPATH variabile d'ambiente per determinare un'altra posizione come directory di base per i percorsi relativi. Se passi la maggior parte del tuo tempo in una certa sezione dell'albero del filesystem, questo può farti risparmiare molte sequenze di tasti (E tempo) ogni giorno.

Scriviamo quanto segue da fare work/dev/projects la directory di base per i percorsi relativi:

export CDPATH=/home/dave/work/dev/projects

Ora, ogni volta che usi il dc comando, la posizione nel CDPATH La variabile d'ambiente viene controllata per prima per i nomi di directory corrispondenti. Se qualcuno di loro corrisponde allo scopo che hai fornito nel cd comando, sei trasferito in quella directory.

Ora, indipendentemente da dove ti trovi nel file system, quando usi il cd comando, la shell controlla se la directory di destinazione è nella directory di base. Se è così, verrà spostato in quella directory di destinazione.

Se la tua directory di destinazione inizia con una barra in avanti (/), che lo rende un percorso assoluto, non sarà influenzato dal CDPATH Variabile ambientale.

Per dimostrarlo, scriviamo quanto segue:

Centro per la prevenzione e il controllo delle malattie
cd prologo
cd /usr
cd avanti

il CDPATH La variabile d'ambiente è davvero un percorso, allo stesso modo di PATH Variabile ambientale. Quando digiti un comando, la shell cerca le posizioni nel PATH per una partita. Quando usi CDPATH, la shell cerca le posizioni nel CDPATH variabile d'ambiente per una partita. Allo stesso tempo, lo stesso di PATH, CDPATH può contenere più posizioni.

IMPARENTATO: Come lavorare con le variabili in Bash

Per fare in modo che la shell cerchi la directory corrente prima di altre posizioni nel CDPATH variabile d'ambiente, basta aggiungere un punto ( . ) all'inizio del percorso così:

export CDPATH=.:/home/dave/work/dev/projects

Per rendere permanenti le tue impostazioni, devi aggiungerli a un file di configurazione, Che cosa .bashrc.

Una cosa a cui prestare attenzione: se imposti una directory di base, influenzerà anche le modifiche alla directory effettuate all'interno degli script. Per evitare questo, puoi usare percorsi assoluti nei tuoi script o un test nel tuo .bashrc file quando specifichi il tuo CDPATH, Come mostrato di seguito:

if test "${PS1+set}"; then CDPATH=.:/home/dave/work/dev/projects; fi

Questo esegue un test per vedere se la variabile della riga di comando, $PS1 , è stato stabilito. il CDPATH La variabile d'ambiente verrà impostata solo se il test ha esito positivo.

IMPARENTATO: Come aggiungere una directory al tuo $ PERCORSO su Linux

Utilizzo di shopt con cd

Con il shopt comando, puoi impostare alcune opzioni per la shell. Alcuni di questi possono migliorare il tuo utilizzo di cd. Per configurarli, utilizzare il -s (abilitare) opzione con shopt per passargli un nome di opzione.

il cdspell L'opzione controlla i nomi delle directory e corregge alcuni errori di battitura comuni, inclusi caratteri trasposti o mancanti, o nomi con troppi caratteri. Se trovi una directory che corrisponde a una delle correzioni, viene stampato il percorso corretto e cd l'azione viene eseguita.

Come esempio, scriviamo quanto segue per configurare il cdspell y escribe mal “Scrivania” para ver si el shell lo corrige por nosotros:

shopt -s cdspell
cd Desktpo

La shell ha riscontrato l'errore, lo corrigió y cambió al directorio “Scrivania”.

Altro shopt opzione che puoi usare con cd è autocd. Elimina la necessità di digitare cd assolutamente. Tutto ciò che scrivi che non è un comando, script o altro eseguibile (come alias), usato come directory di destinazione. Se puoi trasferire in quella directory, è stampato nella finestra del terminale ed è cambiato in quella directory.

Come esempio, scriviamo quanto segue:

shopt -s autocd
/usr/local/games
/eccetera
~

Orologio! Puoi saltare attraverso l'intero file system senza nemmeno usare cd!

Le impostazioni che cambiano con shopt hanno un impatto solo sulle shell interattive, nessun script di perdita.

La collezione di cd

Probabilmente non adotterai tutto questo. Nonostante questo, probabilmente hai trovato qualcosa di interessante o utile qui. Dopotutto, Tutto ciò che velocizza o semplifica la navigazione da riga di comando va bene!!

Iscriviti alla nostra Newsletter

Non ti invieremo posta SPAM. Lo odiamo quanto te.