bat脚本,使用中文进行注释,连续注释现行,运行时就乱码,什么原因?-灵析社区

北北che

如题,我有一个bat脚本,这个脚本的内容如下: ::可以通过在total中调用此脚本,达到直接在当前窗口路径下打开cmd窗口的操作 ::这是第二行注释 @echo off set srcDir=%~s1 :: my script is here echo. pause 如👆,这个脚本开始位置有连续现行注释,这个脚本在双击运行时,或者在cmd窗口调用时,会出现如下提示: ![image.png](https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250103/ccb59358b993a09747e257ec67162c1f.png) 但如果我把开头的两行注释中间在插入一个空行,改成如下样子: ::可以通过在total中调用此脚本,达到直接在当前窗口路径下打开cmd窗口的操作 ::这是第二行注释 @echo off set srcDir=%~s1 :: my script is here echo. pause 如👆的脚本再运行时,就正常了,如👇。 ![image.png](https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250103/fd82dc9e6b105182883aa284efc74af3.png) 我尝试也发现,如果把第一行的注释后面加一个空格,也可以让程序正常(消除乱码) **好头大啊,为什么注释不能放一起,要隔开放?** 我的bat文档以utf8编码保存的,如👇: ![image.png](https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250103/ebe4c2a84e1d10bbb591cf46b18927e2.png) 我的cmd窗口页面是 65001 和编码,如👇: ![image.png](https://wmprod.oss-cn-shanghai.aliyuncs.com/images/20250103/96e5511dacb264cb101d982441c12ea4.png) 求有知道的解惑。

阅读量:289

点赞量:15

问AI
第一种方法 在脚本中设置编码为utf-8 chcp 65001 ... 使用编辑器 将换行符设置为LF 第二种: 不改代码,也不用改换行符, 将bat文件编码设置为gb2312