На моем компьютере с Linux (Gentoo Linux 2.6.31, если быть точным) я заметил, что переменная окружения HOSTNAME доступна в моей оболочке, но не в сценариях. Например,
$ echo $HOSTNAME
возвращается
xxxxxxxx.com,
но
$ ruby -e 'puts ENV["HOSTNAME"]'
возвращается
nil
С другой стороны, переменная среды USER, например, доступна как в оболочке, так и в сценариях.
Я заметил, что USER появляется в списке переменных среды, который появляется, когда я набираю
export
т.е.
declare -x USER="infogrind"
но HOSTNAME нет. Я подозреваю, что проблема как-то связана с этим.
Мои вопросы: 1) как я могу сделать HOSTNAME доступным в скриптах, и 2) для моего лучшего понимания, где изначально установлена эта переменная, и почему она не "экспортируется"?
gethostname()
из-за этого.