在我的Linux机器上(具体来说是Gentoo Linux 2.6.31),我注意到HOSTNAME环境变量在我的Shell中可用,但在脚本中不可用。例如,
$ echo $HOSTNAME
退货
xxxxxxxx.com,
但
$ ruby -e 'puts ENV["HOSTNAME"]'
退货
nil
另一方面,例如,USER环境变量在外壳程序和脚本中均可用。
我注意到USER出现在我键入时出现的环境变量列表中
export
即
declare -x USER="infogrind"
但HOSTNAME却没有。我怀疑这个问题与此有关。
我的问题:1)如何使HOSTNAME在脚本中可用,以及2)为了更好地理解,此变量最初设置在哪里,为什么不“导出”?
gethostname()
。