我正在 Windows 上创建一个小的 perl 脚本。我想确定 Windows 的版本,即 XP、Vista、7、8 等。我如何获得这些信息?谢谢你。
更新: 我想知道运行脚本的 Windows 版本! 请添加一些关于如何使用 API 的代码,因为我是初学者并且对 perl 不太了解。
我正在 Windows 上创建一个小的 perl 脚本。我想确定 Windows 的版本,即 XP、Vista、7、8 等。我如何获得这些信息?谢谢你。
更新: 我想知道运行脚本的 Windows 版本! 请添加一些关于如何使用 API 的代码,因为我是初学者并且对 perl 不太了解。
试试Win32:
#!/usr/bin/env perl
use 5.014;
use strict;
use warnings;
use Win32;
say Win32::GetOSDisplayName();
say for Win32::GetOSName();
say for Win32::GetOSVersion();
如果这还不够,您可以通过Win32::API调用GetVersionEx。
来自http://perldoc.perl.org/perlvar.html
$^O
构建此 Perl 副本的操作系统的名称,在配置过程中确定。有关示例,请参见 perlport 中的 PLATFORMS。
该值与 $Config{'osname'} 相同。另请参阅 perlrun 中记录的 Config 和 -V 命令行开关。
在 Windows 平台中,$^O 不是很有帮助:因为它始终是 MSWin32 ,它无法区分 95/98/ME/NT/2000/XP/CE/.NET 之间的区别。使用 Win32::GetOSName() 或 Win32::GetOSVersion()(参见 Win32 和 perlport)来区分变体。