it-swarm-ru.tech

Что такое ярлык bash для перехода в предыдущий каталог?

К сожалению, я узнал об этом только в прошлом году, случайно наткнувшись на него в Интернете. Я использую его так редко, что всегда забываю, что это такое, когда мне это снова нужно.

Как вы переходите на свой предыдущий каталог?

80
hobodave

Ярлык -

Пытаться cd -

Если вы хотите использовать это в своей подсказке, вы должны обратиться к нему с помощью ~-.

Смотрите пример:

[[email protected] ~]$ cd /tmp
[[email protected] tmp]$ ls
cron.iddS32  serverauth.CfIgeXuvka
[[email protected] tmp]$ cd -
/home/echox
[[email protected] ~]$ ls ~-
cron.iddS32  serverauth.CfIgeXuvka
110
echox

Возможно, вы также захотите взглянуть на pushd и ​​popd, которые создают стек каталогов, чтобы запомнить, где вы были.

Использовать, pushd <directory> изменения к <directory> и ​​сохраняет предыдущий каталог. Чтобы вернуться в этот сохраненный каталог, используйте popd.

22
Rich Homolka

Согласно ответу @echox, вы действительно можете использовать cd - как объясняется на странице руководства для bash:

Когда a используется в качестве операнда, это должно быть эквивалентно команде:

                cd "$OLDPWD" && pwd

который изменяется на предыдущий рабочий каталог, а затем записывает его имя.

Обратите внимание, что измененный каталог выводится внутренним pwd в cd -. Вы можете не захотеть этого вывода в скрипте. Вот где альтернатива становится полезной - просто сделай

cd "$OLDPWD"

и вы сделали!

3
starfry