Навигация по каталогам на вашем сервере AvaHost Linux только что стала проще! Команды
и pushd
– это мощные инструменты для перемещения по сложным структурам папок без потери информации о том, где вы были. Это руководство идеально подходит для системных администраторов, разработчиков и всех, кто работает в терминале Linux. Оно покажет вам, как использовать эти команды для повышения эффективности и поддержания плавности рабочего процесса. Давайте погрузимся в освоение навигации по каталогам с AvaHost!popd
Навигация по сложным структурам каталогов в терминале Linux может отнимать много времени, особенно при системном администрировании или написании сценариев. Хотя команда
(изменить каталог) является основной командой для навигации по каталогам, но ей не хватает возможности управлять стеком каталогов – функция, которую предоставляют cd
и pushd
.popd
В этой статье мы подробно рассмотрим команды
и pushd
и покажем вам, как упростить навигацию по каталогам и сделать работу в терминале более эффективной.popd
pushd (push directory) сохраняет текущий каталог в стеке, а затем переключается на новый каталог.
popd (pop directory) удаляет верхний каталог из стека и возвращает вас к предыдущему.
Эти команды являются частью механизма стека каталогов, доступного в bash, zsh и других современных оболочках.
и pushd
неоценимы, когда:popd
Вы часто перемещаетесь между двумя или более каталогами.
Вы пишете сценарии оболочки, которым нужно временно переключаться между каталогами.
Вы хотите избежать загрязнения оболочки ненужными командами cd и сохранить контекст.
Перемещает текущий каталог в стек.
Изменяет каталог на /path/to/target.
🔁 Пример:
Теперь вы находитесь в каталоге /var/www/html, а ваш домашний каталог ~ хранится в стеке.
Выбрасывает верхний каталог из стека.
Возвращает вас в предыдущий каталог.
Продолжение приведенного выше примера:
Вы вернулись в ~.
Используйте dirs для просмотра текущего состояния стека каталогов:
Пример вывода:
Индекс 0 – это ваш текущий каталог.
Более высокие индексы представляют более ранние каталоги.
Вы можете использовать:
для перемещения текущего каталога в стек без переключения каталогов.
Эффективно для итеративной разработки без повторяющихся команд cd.
Вот сценарий, который собирает код во временной директории и возвращается обратно в чистом виде:
Если скрипт не выполнится внутри /tmp/build-env, вы все равно вернетесь в исходное местоположение.
Это делает ваши скрипты более удобными для сопровождения, особенно при возникновении ошибок – вы можете безопасно вернуться в исходный каталог.
При работе с несколькими вызовами
, pushd
поможет отследить историю навигации.dirs -v
Вы можете удалить определенный каталог из стека:
Удаляет каталог с индексом 1 (не обязательно текущий).
Stack Overflow (не сайт 😄): Чрезмерное использование pushd без соответствующих вызовов popd может раздуть ваш стек, что приведет к запутанному состоянию каталогов.
Не везде доступны: pushd и popd являются встроенными модулями в bash, zsh и подобных оболочках – они могут быть недоступны в минимальных оболочках, таких как sh.
Не постоянны: Стек каталогов основан на сессиях. После завершения терминальной сессии стек сбрасывается.
Добавьте в .bashrc или.zshrc:
Это сократит количество нажатий клавиш и повысит производительность.
Освоение pushd и popd на вашем сервере AvaHost Linux превращает навигацию по каталогам в легкий процесс, экономя время и силы на работе. Независимо от того, пишете ли вы скрипты или управляете сложными проектами, эти команды помогут вам организовать и эффективно использовать терминальные сессии. Готовы поднять управление сервером на новый уровень? Ознакомьтесь с высокопроизводительными VPS и выделенными серверами AvaHost или обратитесь за помощью в нашу круглосуточную службу поддержки!