6

Я использую «cd -» для перехода между двумя каталогами.

Есть ли команда, которая будет вращаться между тремя каталогами?

7 ответов7

21

Есть команды (встроенные) для поддержки стека каталогов: pushd и popd .

9

Здесь можно использовать pushd и popd , однако в отличие от предыдущего постера: посмотрите также это руководство, $DIRSTACK каталогами, вы также можете использовать dirs и cd ~1 для прямого перехода к каталогам в $DIRSTACK !

3

Сначала добавьте второй и третий каталоги в стек каталогов (ваш рабочий каталог уже находится в стеке).

pushd second/directory/path
pushd third/directory/path

Затем поверните каталоги с помощью следующей команды:

pushd +1
1

Решения pushd/popd и $ DIRSTACK, предложенные в других ответах, являются "каноническим" способом.

Другой вариант будет использовать screen команду. Вы открываете свои каталоги в разных экранах и переключаетесь между следующим / предыдущим, используя ярлыки - Ctrl-a n для следующего и Ctrl-a p для предыдущего. Или используя Ctrl-a anyNumber чтобы перейти к определенному экрану. Или с помощью Ctrl-a doublequote чтобы отобразить и визуально выбрать, какой экран вы хотите.

Проверьте все возможные сочетания клавиш в окне.

1

Может быть, это слишком очевидно, откройте два или три терминала и запустите в них mc?

0

как было сказано ранее, но только с несколькими словами:

в основном для bash : вместо использования cd используйте pushd для изменения каталогов, чтобы они сохранялись (то есть сложены)

pushd /home; pushd /var; pushd /log

Для просмотра стека используйте dirs и для более удобной навигации (чтобы получить номера «записей стека» используйте:

dirs -v

Выход:

me@myhost:/home$ dirs -v
 0  /home
 1  /var
 2  /tmp

Теперь используйте эти числа с cd и ~ like:

cd ~1

Но теперь эти числа теперь переставлены, и позиция "0" изменится, поэтому просто дважды pushd каталог в верхнюю позицию (или используйте пустышку в позиции 0), например:

me@myhost:/home$ dirs -v
 0  /home
 1  /home
 2  /var
 3  /tmp

сейчас 1..3 сохранит там положение, я где-то читал, но больше не знаю, так что извините за то, что не дал кредит

(чтобы освободить текущий каталог из стека / удалить его из истории "dirs", используйте popd)

0

Попробуйте использовать ссылку «Z». Он запоминает, в каких каталогах вы были, и вы можете перемещаться с помощью коротких команд и сокращенных имен каталогов.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .