У меня есть этот код C getenv("HOSTNAME");
, который возвращает NULL
на виртуальной машине под управлением Linux (Guixsd).Во время исследования я выполнил следующие три команды, которые работают, как и ожидалось:
hostname
=> guixos
echo $HOSTNAME
=> guixos
cat /etc/hostname
=> guixos
(без новой строки)
Так что я ожидал, что имя хоста также будет напечатано env, но ...
env | fgrep HOST
=>
Итак, у меня есть три способа доступа к имени хоста, которые на самом деле работают, и два, которые я ожидаю, но не очень.Может кто-нибудь объяснить, почему эти два метода также не дают мне имя хоста?