我如何强制 dnscmd.exe 以英文提供其输出?

我如何强制 dnscmd.exe 以英文提供其输出?

我如何强制 dnscmd.exe 以英文提供其输出?

我有自动化程序可以解析各种 dnscmd 命令的输出,例如 dnscmd /info > dnsInfo.txt。我使用 PowerShell 执行这些 dnscmd 命令,并且我无法直接访问这些服务器(由服务器所有者代表我本地执行)。我遇到的 99% 的 MS DNS 服务器(无论其所在国家/地区)都是使用英文版安装的。但是,少数服务器安装了非英文版,并且当这种情况发生时,dnscmd.exe 似乎使用了不同的描述性文本字段。这破坏了我的解析逻辑,我希望避免每次都添加特定于语言的正则表达式。

例如,以下是在非英语(摩洛哥法语)服务器上运行 dnscmd /info 得到的前几个单词:

Résultat de la requête :

Informations sur le serveur
    nom du serveur

或者,有没有办法指示 PowerShell 在不同语言下设置其环境?这可能会说服 dnscmd.exe 更改其输出。

更新,这不起作用:

function Set-Culture([System.Globalization.CultureInfo] $culture)
{
  [System.Threading.Thread]::CurrentThread.CurrentUICulture = $culture
  [System.Threading.Thread]::CurrentThread.CurrentCulture = $culture
}
Set-Culture "en-US"
dnscmd.exe /info

相关内容