Cambia la directory di lavoro corrente solo digitando il nome di quella nuova


5

Qualcosa di simile a questo D&R , so che cdcambierà l'attuale directory di lavoro nel terminale in una nuova directory come questa:

cd /path/to/new_directory

Ma mi chiedo come posso cambiare la directory di lavoro corrente solo digitando ad esempio:

/path/to/new_directory

seguito Enter, ovviamente. Niente di più.

Risposte:


5

Ho appena scoperto che attivando l' autocdopzione shell, usando il seguente comando:

shopt -s autocd

poi

un nome di comando che è il nome di una directory viene eseguito come se fosse l'argomento del cdcomando

(da man bashqualche parte alla linea 5131).

Quindi in realtà mi permetterà di utilizzare qualsiasi directory come comando e lo farà cd:

CD

Per apportare la modifica in modo permanente, aggiungere la seguente riga alla fine del ~/.bashrcfile:

shopt -s autocd

1

Questo è il comportamento predefinito per zshcon la configurazione Grml. zshè una shell avanzata, ha molti miglioramenti rispetto bashalla shell predefinita in Ubuntu.

Per installare zsh, digitare:

sudo apt-get install zsh

Per afferrare la configurazione Grml, eseguilo dalla tua home directory:

wget -O .zshrc http://git.grml.org/f/grml-etc-core/etc/zsh/zshrc
wget -O .zshrc.local  http://git.grml.org/f/grml-etc-core/etc/skel/.zshrc

Quindi corri zshper avviarlo. Se ti piace, puoi renderlo la tua shell predefinita eseguendo il comando seguente:

chsh -s /usr/bin/zsh

Ho taggato la mia Q con bash , quindi non sono molto interessato a zsh . Comunque, +1 per la tua bella e chiara risposta.
Radu Rădeanu,

1
Non hai davvero bisogno di afferrare quella configurazione Grml. L'equivalente di shopt -s autocdfrom bash in zsh è setopt auto_cd.
Radu Rădeanu,

@ RaduRădeanu Grazie per le informazioni. Di solito raccomando la configurazione Grml perché ha tutte le impostazioni che le persone di solito cercano. Se stai perfezionando la shell, probabilmente finirai per imitare il comportamento di zsh / grml. Dopo averlo usato per 2 minuti, tornare a bashè come fare un passo indietro basha sh. (La tua esperienza potrebbe essere diversa.)
kraxor
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.