Как при использовании popd поместить текущий каталог в стек?

Как при использовании popd поместить текущий каталог в стек?

Как при использовании popdпоместить текущий каталог в стек?

решение1

$ pwd; pushd /tmp; pwd; popd; pwd
/home/users/foo
/tmp ~
/tmp
~
/home/users/foo

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

Если вам не нужны несколько уровней истории каталога, вы также можете сделать:

cd foo
# do your stuff in foo
cd -

По сравнению с pushd/ popd, этот вариант имеет тот недостаток cd foo, что в случае сбоя вы попадете в неправильный каталог с cd -.

(Вероятно, cd -это более удобно вне сценариев. «Давайте вернемся туда, где я только что был».)

ВидетьИспользуйте pushd и popd для управления стеком каталоговдля получения дополнительной помощи.

решение2

Это должно быть просто

[$]> pushd .

нет?

решение3

pushd -n $(pwd)

добавляет текущий каталог $(pwd)в стек без изменения каталога.

Из help pushdbash:

Параметры:

-n Подавляет обычное изменение каталога при добавлении каталогов в стек, поэтому манипулируется только стек.

Связанный контент