Window 11 bat 注释有:冒号被打印显示出来

前言全局说明

Window 11 bat 注释被打印显示出来


一、说明

1.1 环境:

Windows 11 家庭版 23H2 22631.3737

1.2 注释说明

正常情况下,注释的内容,是不会被显示到界面的上的。
但是,DOS bat 批处理在使用中就会被显示.

1.3 DOS 注释方式

DOS 共有三种注释,分别是: ::、REM、@REM
三种注释区别:

:: 方式注释
REM 方式注释
@REM 方式注释

参看:https://blog.csdn.net/qq_45662588/article/details/126378272
这里不重复赘述


二、:: 方式注释

2.1 注释被显示出来了

文件名:Win11_批处理文件_注释测试.bat

@echo off
chcp 65001>nul
:: 注意:
:: 这是测试注释内容注意
:: 说明:
:: 这是测试注释内容说明
pause

注释中,注意后面是中文冒号
注释中,说明后面是英文冒号

image

2.2 问题分析

根据上面图片运行结果显示,打印的汉字可知,大概错误的未知。
按错误位置找到,发现汉字处并无特殊字符内容。
那么分析一下:
1. 不能用中文注释? (答:不是的,可以用中文注释,排除)
2. 有什么特殊字符? (答:没有)
3. 图片中汉字前的乱码,可能是和什么字符错位了。除汉字以外的字符就是中文和英文冒号了。
4. 是编码问题?(答:不是。首先 chcp 65001>nul 设置了当前环境编码,而且错误输出内容中,也有正确的汉字输出。如果是编码不对,输出会全是乱码。
想看乱码啥样,可以把编码改成 Win7 的 Chcp 936 >nul 就知道效果了)

2.3 解决

既然是冒号原因,那么删掉就可以了。

2.4 去掉注意和说明后的冒号

文件名:Win11_批处理文件_注释测试.bat

@echo off
chcp 65001>nul
:: 注意
:: 这是测试注释内容注意
:: 说明
:: 这是测试注释内容说明
pause

结果正常了,因为代码中没有任何功能,所以只有 pause 提示

image


三、扩展说明

3.1 需要后面冒号

按照正常书写习惯,注意和说明后面还是希望有冒号

3.2 解决方法

下面两种方法,就看自己习惯,下面方式,任意选一

3.2.1 增加空格

在冒号后面增加至少一个空格,就不会出现此问题
image

3.2.2 增加空行

@echo off
chcp 65001>nul
:: 注意:
:: 这是测试注释内容注意
:: 说明:
:: 这是测试注释内容说明
pause

image

3.2.3 增加注释空工行

@echo off
chcp 65001>nul
:: 注意:
::
:: 这是测试注释内容注意
:: 说明:
::
:: 这是测试注释内容说明
pause

image


四、REM 注释

4.1 注释被显示

@echo off
chcp 65001>nul
REM 注意:
REM 这是测试注释内容注意
REM 说明:
REM 这是测试注释内容说明
pause

image

4.2 解决方法

参看 第二节说明,这里不重复了

五、@REM 注释

5.1 注释被显示

@echo off
chcp 65001>nul
@REM 注意:
@REM 这是测试注释内容注意
@REM 说明:
@REM 这是测试注释内容说明
pause

image

5.2 解决方法

参看 第二节说明,这里不重复了



免责声明:本号所涉及内容仅供安全研究与教学使用,如出现其他风险,后果自负。




参考、来源:



posted @   悟透  阅读(60)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
历史上的今天:
2024-01-10 Python Flask Config配置文件、类配置 及 安全
2024-01-10 生活常识-食疗食养
2024-01-10 生活常识-物品辩真假
2024-01-10 生活常识-身体穴位
2024-01-10 生活常识-食物治病
2024-01-10 生活常识-居家小妙招
2024-01-10 生活常识-食物作用
点击右上角即可分享
微信分享提示