Я экспериментировал с pushd
и popd
в bash (Cygwin, на странице руководства написано "GNU bash 4.1"), и страница руководства, похоже, не совсем соответствует поведению.
Для pushd
команда
% pushd +1
оба вращают стек и изменяют рабочий каталог;
% pushd -n +1
просто вращает стек Похоже, это соответствует справочной странице.
Но
% popd +1
удаляет запись из стека, но НЕ меняет рабочий каталог (даже если «-n» не был указан). Это не похоже на страницу руководства, приведенную ниже:
Аргументы, если они есть, имеют следующие значения:-n Подавляет обычное изменение каталога при удалении каталогов из стека, так что манипулировать только стеком.
+n Удаляет n- ую запись, считая слева от списка, показанного
dirs
, начиная с нуля. Например: «popd +0
» удаляет первый каталог, «popd +1
» - второй.
Это так и должно быть?