Используйте pushd и popd для эффективной навигации по файловой системе в Linux.
Иногда перемещаться по файловой системе Linux с помощью команд может быть сложно, особенно для новичков. Обычно мы в основном используем команду cd (Изменить каталог) для перемещения по файловой системе Linux.
В предыдущей статье мы рассмотрели простую, но полезную утилиту CLI для Linux под названием bd, позволяющую быстро вернуться в родительский каталог без многократного ввода cd ../../...
В этом руководстве объясняется связанный набор команд: «push» и «popd», которые используются для эффективной навигации по структуре каталогов Linux. Они существуют в большинстве оболочек, таких как bash, tcsh и т. д.
Рекомендуется к прочтению: Autojump — расширенная команда «cd» для быстрой навигации по файловой системе Linux
Как команды pushd и popd работают в Linux
pushd и popd работают по принципу «LIFO» (последним пришел — первым ушел). В этом принципе разрешены только две операции: поместить элемент в стек и извлечь элемент из стека.
pushd добавляет каталог на вершину стека, а popd удаляет каталог с вершины стека.
Чтобы отобразить каталоги в стеке каталогов (или истории), мы можем использовать команду dirs, как показано.
dirs
OR
dirs -v
команда pushd – помещает/добавляет пути к каталогам в стек каталогов (историю), а затем позволяет вам вернуться к любому каталогу в истории. Когда вы добавляете каталоги в стек, он также отражает то, что существует в истории (или «стеке»).
Команды показывают, как работает pushd:
pushd /var/www/html/
pushd ~/Documents/
pushd ~/Desktop/
pushd /var/log/
Из стека каталогов в приведенном выше выводе (индекс каталога находится в обратном порядке):
- /var/log — пятый [индекс 0] в стеке каталогов.
- ~/Desktop/ занимает четвертое место [индекс 1].
- ~/Documents/ занимает третье место [индекс 2].
- /var/www/html/ — второй [индекс 3] и
- ~ стоит первым [индекс 4].
При желании мы можем использовать индекс каталога в форме pushd +#
или pushd -#
для добавления каталогов в стек. Чтобы перейти в ~/Documents, мы должны ввести:
pushd +2
Обратите внимание, что после этого содержимое стека изменится. Итак, из предыдущего примера, чтобы перейти в /var/www/html, мы должны использовать:
pushd +1
команда popd – удаляет каталог из вершины стека или истории. Чтобы просмотреть стек каталогов, введите:
popd
Чтобы удалить каталог из стека каталогов, используйте popd +#
или popd -#
, в этом случае мы должны ввести команду ниже, чтобы удалить ~/Documents :
popd +1
Также ознакомьтесь: Fasd — инструмент командной строки, обеспечивающий быстрый доступ к файлам и каталогам.
В этом уроке мы объяснили команды «push» и «popd», которые используются для эффективной навигации по структуре каталогов. Поделитесь своими мыслями по поводу этой статьи через форму обратной связи ниже.