Всем привет
Вопрос касается export. Export превращает локальную переменную в переменную окружения. В bashrc есть такая строчка -
PATH=$PATH:/foo:/bar
export PATH
нахрен здесь export? ведь PATH и так переменная окружения. Я раньше думал, что для того, чтобы и значение этой переменной экспортнулось, но сегодня заметил, что и без export дочерняя сессия получает это значение - допустим, если написать
LANG=ru_RU.UTF-8
bash
echo $LANG
то значение будет ru_RU.UTF-8 без всякого экспорта.
То есть, как я понял, export просто превращает локальную переменную в переменную окружения и смысла его запускать для уже существующих переменных окружения нет, то есть бессмысленно писать export PATH, но зачем-то он везде прописан? ладно, предположим, что PATH до этого не задана но ведь сама переменная PATH=$PATH:/foo:/bar намекает, что используй существующую переменную PATH.