Как получить версию ОС удаленного компьютера в Perl без использования стороннего инструмента

У меня есть требование, где я должен найти ОС, работающую на удаленной машине в Perl. Машина может работать на любой ОС от windows, linux до aix. Я видел несколько решений, но, к сожалению, все требует установки третьей части инструмента, что не может быть сделано в этом случае.

Не могли бы вы подсказать мне, как получить информацию об ОС удаленного компьютера (имя и версия) без необходимости установки стороннего инструмента.

2 ответа

У вас есть удаленный компьютер R и локальный компьютер L. Что именно ты делаешь?

  • Запуск сценария Perl на компьютере L, который обращается к удаленному компьютеру R.
  • Запуск программы на машине L, которая запускает Perl-скрипт на машине R.

Если вы делаете второй сценарий, взгляните на модуль Config. Это стандартный модуль Perl, и он включен во все версии Perl, по крайней мере, с Perl 5.8. Существуют сотни параметров, которые вы можете выбрать. Взгляни на osname а также osver,

Это довольно просто в использовании:

use Config;   #Imports $Config hash

print "Operating system is $Config{osname}\n";
print "The version of the OS is $Config{osvers}\n";

Если вы можете войти на каждый удаленный компьютер, и если на нем установлен perl, просто проанализируйте вывод perl -V, Например

$ perl -V
Сводка моей конфигурации perl5 (версия 5, версия 12, subversion 0):

  Платформа:
    osname = MSWin32, osvers = 5.1, archname = MSWin32-x86-multi-thread
    uname = 'Win32 strawberryperl 5.12.0.0 # 1 ср 28 апреля 11:51:06 2010 i386'
    ....
Другие вопросы по тегам