Qual è il collegamento bash per passare alla directory precedente?


76

Purtroppo, ho appreso questo ultimo anno inciampando su di esso in modo casuale su Internet. Lo uso così raramente che dimentico sempre di cosa si tratta quando ne ho ancora bisogno.

Come si passa alla directory precedente?

Risposte:


105

La scorciatoia è -

Provare cd -

Se vuoi usare questo nel tuo prompt, devi fare riferimento ad esso con ~-.

Vedi l'esempio:

[echox@kaffeesatz ~]$ cd /tmp
[echox@kaffeesatz tmp]$ ls
cron.iddS32  serverauth.CfIgeXuvka
[echox@kaffeesatz tmp]$ cd -
/home/echox
[echox@kaffeesatz ~]$ ls ~-
cron.iddS32  serverauth.CfIgeXuvka

19

Potresti anche voler guardare pushde popd, che creano una pila di directory per ricordare dove ti trovavi.

Per usare, pushd <directory>cambia <directory>e salva la directory precedente. Per tornare a questa directory salvata, utilizzare popd.


2

Secondo la risposta di @echox, puoi davvero usare cd -come pagina man per bashspiegare:

Quando a viene usato come operando, questo deve essere equivalente al comando:

                cd "$OLDPWD" && pwd

che passa alla directory di lavoro precedente e quindi scrive il suo nome.

Si noti che la directory modificata in viene emessa dall'inerente pwdin cd -. Potresti non voler quell'output in uno script. Ecco dove l'alternativa diventa utile: basta farlo

cd "$OLDPWD"

e hai finito!

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.