如题,bat文件的文本编码为UTF-8,当脚本中字符包含中文等时,在简体中文Windows上运行会乱码。为了解决这个问题,需要在bat开头加一行chcp 95001
,以修改控制台窗口当前代码页与我们的bat文本编码一致,才不会乱码。
但这样还没完,进行上述修改后尝试运行,会发现控制台有如图报错:
这是因为在UTF-8下,控制台窗口默认的点阵字体并不支持中文显示。因此我们需要在窗口标题栏上右键属性,将字体由点阵字体改为TrueType字体(例如Consolas),这样就能正确显示中文了!
或者,如果不方便这样修改的话,那就把bat文本编码改为GBK,然后在开头加一行chcp 936
,这样在简体中文Windows下无需设置就能正常显示了。
https://devblogs.microsoft.com/commandline/understanding-windows-console-host-settings/