#linux #bash #ubuntu
#linux #bash #ubuntu
Вопрос:
Я работаю на компьютере с Linux, установленном в Oracle VirtualBox. Сведения о среде приведены ниже:
- Oracle VirtualBox: версия: 6.1
- Версия операционной системы Ubuntu: 20.04
Я создал custom.sh файл внутри /etc/profile.d
. Содержимое custom.sh это как показано ниже:
export CUSTOM_VAR=value1
Затем я отправил команду: и проверил с помощью . source /etc/profile
echo $CUSTOM_VAR
Все работает так, как должно.
После того, как я изменил custom.sh файл, изменив значение на переменную следующим образом: export CUSTOM_VAR=value2
и отправьте его. Он отлично работает в терминале.
У меня проблема в том, что каждый раз, когда я открываю новый терминал echo $CUSTOM_VAR
, он выводит старое значение, а не новое.
Я запускаю приведенные ниже команды, чтобы проверить, объявлена ли переменная в другом месте:
sudo grep -r CUSTOM_VAR /etc/*
Результат выглядит следующим образом:/etc/profile.d/custom.sh:export CUSTOM_VAR=value2
sudo grep -r CUSTOM_VAR ~/.*
Результат похож на пустой.
Я буду признателен за любое руководство по решению этой проблемы.
С уважением,
Случайно.
Обновить…………………
Я проверил все файлы ниже :
- /etc/environment
- /etc/env.d/*
- /etc/profile
- /etc/profile.d/*
- /etc/bashrc, /etc/bash.bashrc
- /.bash_profile
- /.bashrc
- /.profile
Комментарии:
1. Как насчет .bashrc ? cd ~ amp;amp; vi .bashrc
2. После запуска исходной команды я получаю правильное значение. Это не опечатка.
3. Запустите новый сеанс X.
4.
/etc/profile
выполняется только оболочками входа.5. Я перезапустил компьютер и, похоже, устранил проблему. Я думаю, вы можете быть правы в отношении /etc/profile выполняется только для входа в систему или с того места, где он начинается.