87 votes

Comment puis-je annuler la dernière commande cd ?

Y a-t-il un moyen de retourner au répertoire de travail précédent après avoir effectué un cd vers un répertoire différent?

Mon cas d'utilisation est que je parcours une structure de répertoires pour un projet Java, et je m'attends à ce que le répertoire actuel n'ait qu'un seul sous-répertoire. Ainsi, je tape cd et appuie rapidement sur Tab et Enter. Cependant, le Tab a échoué, car j'ai malencontreusement pensé qu'il n'y avait qu'un sous-répertoire, alors qu'en fait il y en a plus. Maintenant, je viens d'exécuter cd et me voilà dans mon répertoire personnel, au lieu du projet Java. Existe-t-il un moyen de "annuler" ce cd et de retourner au répertoire dans lequel j'étais?

144voto

Kristof Provost Points 323

Vous pouvez utiliser cd - pour revenir à votre emplacement précédent, peu importe où cela était.

22voto

aceofspades Points 310

cd - est idéal pour revenir d'un niveau, mais si vous vous trouvez à vouloir revenir de quelques niveaux, consultez ce script :

acd_func.sh

C'est génial. cd -- pour voir votre historique, et cd -3 pour revenir de 3 niveaux, par exemple.

16voto

Ilya Suzdalnitski Points 13896

Vous pouvez également utiliser pushd et popd pour utiliser la pile de répertoires. Voici des informations.

6voto

De plus, cd .. peut vous ramener en arrière au répertoire parent du répertoire de travail, puis si nécessaire la commande peut être répétée jusqu'à ce que vous arriviez où vous voulez être. En fait, chaque fois qu'elle est invoquée, elle vous ramène à travers l'arborescence des répertoires, ce qui finirait finalement à / (le répertoire racine) si vous vous contentiez de répéter la commande.

En contraste, cd - fait en réalité du répertoire de travail précédent le répertoire de travail actuel, (ce qui est connu sous le nom de .), et dont l'emplacement exact dans le système de fichiers peut être trouvé avec pwd.

Ainsi, à la fois cd .. et cd - peuvent être utiles dans différentes circonstances lors de la navigation dans l'arborescence des répertoires, bien qu'ils diffèrent dans les respects susmentionnés. Peut-être la commande la plus utile après avoir expérimenté avec ces deux commandes est cd, qui vous ramène au dossier personnel.

-1voto

user258456 Points 27

La meilleure façon de faire cela pour revenir en arrière est cd -, cependant si vous voulez sauter plusieurs niveaux à la fois, vous feriez mieux d'utiliser cd .. pour un niveau, cd ../.. pour deux, cd ../../.. pour trois et ainsi de suite... une bonne façon de le faire rapidement est ce script:

#!/bin/bash
printf "Nombre de dossiers à remonter: "
read TIMES
BACKCHARS=../
BACK=$(for i in `seq $TIMES`; do printf $BACKCHARS; done)
cd $BACK

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X