批处理 中文问题

1 现象

现将批处理文件内容改为如下,也就是把文件夹名改为中文,发现文件夹可能无法正常创建。

02-中文.bat,批处理文件具体内容如下。

md d:\1月
md d:\2月
md d:\3月

2 原因

批处理中文件夹为中文时,批处理无法正确执行的可能原因是编码问题。


Windows的批处理实际是交给cmd.exe程序处理,cmd.exe应用程序使用编码为ANSI编码。而当前文本文件编辑器的默认编码通常为UTF-8。 所以会出现问题。

因此需将批处理文件的编码改为ANSI编码。


3 解决方法

将批处理文件的编码改为ANSI编码。


3.1 [记事本]程序更改ANSI编码

如果使用记事本文件,更改文件编码为ANSI编码的方法。

点击菜单[文件]—[另存为]。

img


弹出的[另存为]对话框中,编码选择[ANSI],点击[保存]按钮。

img


然后双击运行批处理文件,成功创建文件夹。


3.2 sublime程序更改ANSI编码

中文下的ANSI编码等价于GBK编码。Sublime下设置

点击[File]—[Save with Encoding]—[Chinese(GB18030)]。

img


然后成功运行。