使用英语进行系统调用(Windows命令提示符)

我正在开发一个Perl脚本,需要做一些系统调用来获取一些系统数据。 为了在任何计算机上可靠地parsing这些呼叫的输出,我需要确保呼叫的输出设置为英语。

我面临的问题是,例如在我的电脑中,我从这些命令获得本地化的输出。 我的Windows设置为西class牙语,所以像systeminfo这样的调用返回西class牙语的数据。

有没有一个命令(或别的东西),我可以运行在一个命令调用,使所有系统调用的行为就像系统总是英文,而不必修改系统configuration中的任何东西?

在此先感谢您的意见。

赏金注意事项:这个问题的答案不得以任何方式干扰系统。 它应该是一种获取来自系统调用/命令的英文答案的方式,可以在任何机器上运行,而不需要修改其configuration,registry等。

这个解决方案允许你使用英文命令提示符。 它确实会改变一些注册表键值,但是如果你愿意,它也会改变它们。 您可以运行它们放在.bat的相同命令,以使系统转到英语,然后再回到本地化。

如果您尝试运行需要管理员权限的命令,则可以将这些调用包含在程序中,而不会出现任何问题。

HTH

我认为WMIC的命令是最好的。 自从Windows XP以来,它一直是Windows的标准功能。

WMIC可以完全访问Windows系统(取决于用户权限等),并且有一个语言环境选项,用于从安装的语言包中选择有效的语言环境(对于命令)。

区域设置从列表中选择。

要获取使用美国英语的当前用户名(如果可用),您可以使用wmic /locale:ms_409 netlogin get name

通过WMI界面,您甚至可能不需要对结果进行本地化(例如:小心谨慎,您可能只是获取原始数据)。