Використання змінних середовища в Терміналі на Mac
Командний процесор використовує змінні середовища для зберігання інформації, наприклад імені поточного користувача, ім’я комп’ютера в мережі, стандартні шляхи для різних команд. Змінні середовища успадковуються всіма командами, що виконуються в контексті процесора, і деякі команди залежать від змінних середовища.
Можна створювати змінні середовища і використовувати їх для керування поведінкою команди, не змінюючи самої команди. Наприклад, можна використовувати змінну середовища для того, щоб команда виводила інформацію про налагодження на консоль.
Щоб задати значення змінної середовища, використовуйте відповідну команду процесора для співставлення імені змінної і значення. Наприклад, щоб задати змінній PATH значення /bin:/sbin:/user/bin:/user/sbin:/system/Library/
, потрібно ввести у вікні Терміналу команду:
% PATH=/bin:/sbin:/user/bin:/user/sbin:/system/Library/ export PATH
Щоб переглянути всі змінні середовища, введіть:
% env
Коли ви запускаєте програму з командного процесора, вона успадковує більшість середовища командного процесора, включно з експортованими змінними середовища. Ця форма успадкування може бути корисною для динамічного конфігурування програми. Наприклад, програма може перевірити наявність (або значення) змінної середовища і змінити свою поведінку відповідно до цього.
Різні процесори підтримують різну семантичну модель для експортованих змінних середовища. Перегляньте man-сторінку вибраного командного процесора.
Оскільки процеси-нащадки процесора успадковують його середовище, поцесори є окремими контекстами виконання, які не обмінюються змінними середовища. Змінні, задані в одному вікні Терміналу, не є заданими в іншому.
Після закривання вікна Терміналу всі призначення змінних у ньому зникають. Щоб значення змінних залишалися дійсними для різних сеансів і для всіх вікон Терміналу, потрібно налаштувати стартовий скрипт командного процесора. Докладніше про змінення стартового скрипта командного процесора zsh для зберігання змінних та інших налаштувань для різних сеансів дивіться у розділі «Invocation» man-сторінки процесора zsh.