bat 编码导致的命令解析错误
概要:本文讨论了在 bat 文件中使用 UTF-8 编码可能导致的命令解析错误,并提供了解决方案。
1. 问题描述
在 bat 文件中使用某些命令(如 md 创建文件夹命令),如果使用 chcp 65001 并将文件保存为 UTF-8 编码,可能会出现以下问题:
- 命令解析不完整:某些字符可能被错误解析或丢失。
- 引号解析错误:导致引号未正确闭合,进而影响命令执行。
2. 解决方案
2.1 使用 GB2312 编码
为了避免上述问题,可以使用 chcp 936(即 GB2312 编码)并确保 bat 文件保存为 GB2312 编码格式。
::在bat脚本的前面加入
chcp 936 >nul
注意:
- 该方法适用于默认使用 GB2312 编码的系统。
- 如果系统本身使用 UTF-8 编码,则无需更改编码。
留下评论