Динамическое изменение окружения Bash без перезапуска

Практические лайфхаки для разработчиков, DevOps и админов: Docker, Linux, Bash, Python, Golang, Ansible, логи и безопасность — только рабочие решения. Даем готовые команды, конфиги и приёмы диагностики, которые экономят часы и дни. Если нужно быстро настроить, отладить и обезопасить инфраструктуру — вы по адресу.

bashокружениеsighup

ℹ️ Иногда приходится менять переменные окружения на лету или добавлять директории в PATH, но перезапускать сессию неудобно. Вот интересный способ обновить PATH и другие переменные во всех открытых терминалах динамически.

Инструкция

  1. 📑 1. Создайте файл /etc/profile.d/custom_env.sh:

    export PATH=$PATH:/new/custom/path
    export CUSTOM_VAR="new_value"
  2. 🖥 2. Отправьте сигнал SIGHUP всем открытым сессиям Bash:

    kill -HUP -$(pgrep -u $USER bash)

    ❕ Это мгновенно применит новые переменные окружения во всех открытых терминалах, не прерывая сессий.

✳️ Такой трюк знают далеко не все, но он может сильно упростить жизнь в повседневной работе.

tags: #полезно #linux #bash

🧭 @recura_tech

Иллюстрация: стилизованный терминал с шестерёнками и круговыми стрелками, символизирующими динамическое обновление окружения и PATH в Linux.
Схематичный образ обновления окружения в Linux: терминал, шестерёнки и циклические стрелки.

Читайте так же