Dans le terminal, comment puis-je définir une clé pour accéder au répertoire précédent dans lequel je me trouvais lors du changement de répertoire avec la commande cd
?
Par exemple, je suis dans /opt/soft/bin
et je cd
dans /etc/squid3
et je veux revenir au premier répertoire.
Vous pouvez utiliser
cd -
ou vous pourriez utiliser
cd $OLDPWD
Les autres réponses sont définitivement complètes au sens de la réponse directe. cd -
et cd $OLDPWD
sont certainement les principaux choix pour cela. Cependant, je trouve souvent qu'entrer dans un workflow avec pushd
et popd
fonctionne mieux.
Pour faire court, si vous vous déplacez dans un répertoire avec l'intention ultime de revenir à votre point de départ, utilisez pushd
/popd
.
La différence majeure est facilement illustrée par un exemple.
$ cd dir1
$ pushd dir2
À ce stade, vous disposez d'une pile de répertoires qui est dir2, dir1
. L'exécution de pushd
sans argument vous remettra dans dir1
avec la pile maintenant en tant que dir1, dir2
. popd
ferait de même, mais vous laisserait une pile de répertoires vide. Ce n'est pas très différent de ce que vous auriez été avec le cd -
workflow.
Cependant, vous pouvez maintenant changer de répertoire plusieurs fois et revenir à dir1
. Par exemple,
$ cd dir1
$ pushd dir2
$ cd dir3
Si vous exécutez popd
à ce stade, vous reviendrez à dir1
.
Tu devrais utiliser:
cd ~-
il fait la même chose que cd -
(de la réponse actuellement acceptée) sans l'écho gênant du répertoire et est plus facile à taper que cd "$OLDPWD"
ou cd - > /dev/null
.
$ cd -
passera au répertoire de travail précédent.
Vous pouvez "définir une clé" pour cd -
en modifiant votre ~/.bashrc
fichier et incluant un alias pour la commande. Par exemple, vous pouvez ajouter cdc
pour en faire cd -
qui vous fournirait un moyen plus rapide d'accéder au dernier répertoire en ajoutant:
alias cdc='cd -'
De cette façon, vous taperiez simplement cdc
et cela vous placerait dans votre dernier répertoire de travail.
cd ..
va au dossier précédent dans l'arborescence du dossier.cd -
va dans le dossier précédent. Cette commande ne fonctionnait pas sur certaines distributions (Ubuntu 16.04), fonctionne dans Debian 9.