Quel est le raccourci bash pour accéder au répertoire précédent?

76

Malheureusement, je n'ai appris l'existence de cela l'année dernière qu'en tombant par hasard sur Internet. Je l’utilise si rarement que j’oublie toujours ce dont il s’agit au moment où j’en ai de nouveau besoin.

Comment passez-vous dans votre répertoire précédent?

hobodave
la source

Réponses:

105

Le raccourci est -

Essayer cd -

Si vous voulez utiliser ceci dans votre invite, vous devez vous y référer avec ~-.

Voir l'exemple:

[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
echox
la source
19

Vous pouvez également vouloir regarder pushdet popdcréer une pile de répertoires pour vous rappeler où vous étiez.

Pour utiliser, pushd <directory>modifie <directory>et enregistre le répertoire précédent. Pour revenir à ce répertoire enregistré, utilisez popd.

Rich Homolka
la source
2

Selon la réponse de @echox, vous pouvez en effet utiliser cd -comme page de manuel pour bashexpliquer:

Quand a est utilisé comme opérande, cela doit être équivalent à la commande:

                cd "$OLDPWD" && pwd

qui change dans le répertoire de travail précédent, puis écrit son nom.

Notez que le répertoire modifié est généré par les éléments inhérents pwdà cd -. Vous ne voudrez peut-être pas cette sortie dans un script. C’est là que l’alternative devient utile - il suffit de faire

cd "$OLDPWD"

et tu as fini!

starfry
la source