Найти в Дзене
Герман Геншин

Всё решает одна папка: почему рабочая директория в Linux — твой главный козырь, и как использовать её на максимум!

Когда ты работаешь в терминале Linux, у тебя всегда открыта определённая папка — это и есть рабочая директория. Это базовое понятие: благодаря ему ты перемещаешься по файловой системе, смотришь содержимое папок и запускаешь команды. Рабочая директория (её ещё называют текущей) — понятие знакомое каждому, кто сталкивался с терминалом Linux. Представь: если ты никогда не пользовался консолью, можно сравнить это с той папкой, которую ты прямо сейчас видишь в файловом менеджере, например, в приложении «Файлы» или Dolphin: Обычно, когда ты открываешь терминал, в качестве стартовой рабочей директории используется твоя домашняя папка (например, /home/$USER). Перемещаться между папками помогает команда cd: после cd / рабочей директорией станет уже корень всей файловой системы. Большинство команд — например ls — без указания пути работают именно с той директорией, где ты сейчас находишься: Если просто написать ls без параметров, команда покажет содержимое текущей папки. Захотел посмотреть что-
Оглавление

Кратко

Когда ты работаешь в терминале Linux, у тебя всегда открыта определённая папка — это и есть рабочая директория. Это базовое понятие: благодаря ему ты перемещаешься по файловой системе, смотришь содержимое папок и запускаешь команды.

Что такое рабочая директория?

Рабочая директория (её ещё называют текущей) — понятие знакомое каждому, кто сталкивался с терминалом Linux. Представь: если ты никогда не пользовался консолью, можно сравнить это с той папкой, которую ты прямо сейчас видишь в файловом менеджере, например, в приложении «Файлы» или Dolphin:

-2

Обычно, когда ты открываешь терминал, в качестве стартовой рабочей директории используется твоя домашняя папка (например, /home/$USER). Перемещаться между папками помогает команда cd: после cd / рабочей директорией станет уже корень всей файловой системы. Большинство команд — например ls — без указания пути работают именно с той директорией, где ты сейчас находишься:

-3

Если просто написать ls без параметров, команда покажет содержимое текущей папки. Захотел посмотреть что-то в другой — укажи путь, и ls покажет именно его содержимое.

Кстати, менять рабочую директорию не обязательно — во многих командах можно сразу указать путь к нужному файлу или папке. Но чаще всё проще: если перейти в нужную директорию, не придётся каждый раз вбивать длинный путь.

Как сменить рабочую директорию

С командой cd всё максимально просто. Обычно её используют так:

Например, cd / отправишься в корень системы, а cd /usr/local/bin — сразу попадёшь в папку локальных исполняемых файлов:

-4

На практике гораздо удобнее пользоваться относительными путями, чтобы не печатать каждый раз полный адрес. Если ты сейчас находишься в /usr/local, чтобы перейти в папку bin, достаточно просто исполнить cd bin.

Как пользоваться командой cd в Linux

Многие не задумываются о команде cd в Linux, хотя у неё масса полезных трюков!

Если набрать cd без аргументов — ты сразу окажешься в домашней директории (cd $HOME). Это быстрый способ вернуться «домой».

Во многих оболочках имя текущей папки всегда видно прямо в строке приглашения командной строки (prompt). Если это отключено — узнать, где ты сейчас, можно командой pwd.

Всё о команде pwd

pwd расшифровывается как «print working directory» — с её помощью ты узнаешь полный путь к своей рабочей директории:

-5

На первый взгляд — ничего сложного. Но у pwd есть интересные параметры: -L и -P. С их помощью можно управлять тем, как команда работает с символическими ссылками. Вот пример:

-6

В каталоге есть папка notes и симлинк link-to-notes, который на неё указывает. Если перейти в notes, pwd покажет путь непосредственно до этой папки. Зайдёшь в link-to-notes — pwd покажет путь именно до симлинка.

Получается так потому, что по умолчанию pwd выводит именно «логический» путь — буквально тот маршрут, которым ты сюда попал (со всеми заходами через симлинки). Если нужен «физический» путь — минуя символические ссылки — используй флаг -P:

-7

Для уверенности в логическом выводе (особенно если любишь алиасы), добавь флаг -L. К слову, эти же параметры поддерживает и команда cd — с ними переходы работают аналогично.

Как создавать и использовать символические ссылки (symlink) в Linux

Разбираемся во всех нюансах символических ссылок.

Переменная окружения PWD — зачем она нужна и как связана с pwd?

Команда pwd читает значение из переменной окружения PWD. Эта переменная автоматически изменяется при переходе между папками, например, через cd. Текущее значение легко узнать: echo $PWD — и весь путь перед тобой.

-8

На самом деле вся команда pwd просто выводит значение PWD (именно логический путь, а не физический).

Настройка переменных окружения в Bash на Linux

Ускоряй работу с помощью переменных окружения!

Когда ты меняешь папку, оболочка сохраняет твой предыдущий путь в переменной OLDPWD. Это удобно: cd - вернёт тебя в ту директорию, где был до этого (cd $OLDPWD). Так можно быстро прыгать туда-обратно между двумя локациями, просто повторяя cd -.

Если вам понравилась эта статья, подпишитесь, чтобы не пропустить еще много полезных статей!

Премиум подписка - это доступ к эксклюзивным материалам, чтение канала без рекламы, возможность предлагать темы для статей и даже заказывать индивидуальные обзоры/исследования по своим запросам!Подробнее о том, какие преимущества вы получите с премиум подпиской, можно узнать здесь

Также подписывайтесь на нас в: