в RHEL5, по умолчанию Ruby's Socket::gethostname
возвращает короткое имя хоста без доменного имени. В RHEL6 он возвращает имя хоста , включая доменное имя.Ruby short Socket.gethostname в RHEL6
Это вызвано различной системой hostname
функциональностью в RHEL6, которая может быть исправлена в сценариях SH с использованием hostname -s
. Есть ли параметр Socket::gethostname
, чтобы исправить его в Ruby?
Можно исправить путем анализа вывода с использованием регулярного выражения или с помощью системного вызова, например. 'hostname -s'.strip
, но ни одно из них не является простым и приятным решением.
Не могли бы вы помочь?
Благодаря Jan
Благодарим за подробную информацию. Я довольно новичок в Ruby (обновление кода других) и еще не нашел исходников. Решение не из самых быстрых, но поскольку оно не выполняется тысячи раз, оно не должно возражать. Это просто не методично. –