Linux Labs

Первые шаги / Ступень 14 из 15

Справка и оболочка

Не запущена Запускается обычно ~20 с
Выйти из урока

Шаг 5 из 8 · на машине · 4 мин

Настройка для новых оболочек

Чтобы lab-status находилась по имени, ~/tools добавляют в PATH. Хватит одной команды — пока не закроешь терминал.

Каталог ставят в начало списка — echo покажет его первым:

bash
export PATH="$HOME/tools:$PATH"
echo "$PATH"

Справа от = — новый каталог, двоеточие и прежнее значение $PATH, так что старые каталоги остаются в списке. Запись PATH="$HOME/tools" без :$PATH заменила бы весь список, и ls с cp перестали бы находиться. export передаёт значение программам, которые запустит эта оболочка.

Такая настройка живёт, пока открыт этот терминал: после нового входа PATH снова прежний. Каждая новая интерактивная Bash выполняет команды из файла ~/.bashrc — постоянные настройки дописывают в его конец. Дописать строку можно в Vim или через >> из урока «Куда уходит вывод команды».

source ~/.bashrc выполняет файл в текущей оболочке — так правка действует сразу. Но значения от прошлых попыток в этой оболочке тоже остаются, поэтому окончательная проверка — новый вход.

Проверь себя 1 вопрос

Ты выполнил export PATH="$HOME/tools:$PATH", потом запустил новую оболочку командой bash, и lab-status в ней работает. Что это доказывает?

  • Новая bash унаследовала PATH от оболочки, где был export, — файл здесь не участвовал. Загляни в него: tail -n 3 ~/.bashrc.

  • export меняет окружение одной оболочки и программ, которые она запустит. Другие терминалы и пользователи его не видят.

  • export живёт в оболочках этого терминала. После нового входа PATH снова прежний, если строки нет в ~/.bashrc.

export передаёт PATH дочерним процессам, и новая bash получила его по наследству. Строку в ~/.bashrc проверяет оболочка с чистым окружением, как при новом входе, — так проверяет и упражнение ниже.

Главное в шаге

  • export PATH="$HOME/tools:$PATH" ставит каталог в начало списка и сохраняет прежние каталоги.
  • export действует в этой оболочке и в программах, которые она запустит; для каждого нового входа строку дописывают в ~/.bashrc.
Ubuntu 24.04
Загрузка…