Il y a pushd
et popd
Bash gardera un historique des répertoires que vous visitez, il vous suffit de demander.Bash stocke l'historique dans une pile et utilise les commandes pushd et popd pour gérer la pile.
Plus à lire
Exemple :
$ pwd; pushd /tmp; pwd; popd; pwd
/home/me
/tmp ~
/tmp
~
/home/me
Appel bash
démarre un nouveau sous-shell, qui a sa propre entrée ; aucune des autres commandes ne s'exécutera jusqu'à ce qu'elle se termine. Entourer les commandes à exécuter avec des parenthèses démarrera également un nouveau sous-shell, mais il exécutera les commandes qu'il contient.
( cd dir ; ./dostuff )
Si vous n'avez pas besoin de plusieurs niveaux d'historique de répertoire, vous pouvez également :
cd foo
# do your stuff in foo
cd -
Comparé à pushd
/popd
, cela a l'inconvénient que si cd foo
échoue, vous vous retrouvez dans le mauvais répertoire avec cd -
.
(Probablement cd -
est plus pratique en dehors des scripts. "Retournons là où j'étais.")