我想使用 python解析到 Windows 命令的输出,例如ipconfig
,netstat
等。tasklist
但是这些命令的输出的某些部分(固定)是根据当前的语言环境/代码页返回的。
例如在ipconfig
输出中
the string IP Address..........:123.23.242.12
will be in chinese IP 地址 ..........:123.23.242.12
或其他语言,具体取决于代码页。
是否有任何方法可以执行命令,例如os.popen("ipconfig")
使用特定的语言环境/代码页设置。
我尝试使用语言环境模块:
locale.setlocale(locale.LC_ALL,"american_united states")
locale.getlocale()
返回"English_United States.1252"
但os.system("chcp")
仍返回旧代码页:936
并os.popen("ifconfig")
返回中文字符串。os.system("chcp 65001")
现在os.popen("ifconfig")
返回英文字符串,但它会清除控制台的所有先前输出(可能是打开新控制台),这是不可接受的。
有没有任何方法可以执行命令,例如os.popen("ipconfig")
特定的语言环境/代码页设置?任何帮助表示赞赏。