遇到个奇怪问题, 一直运行正常的powershell
脚本文件突然有一行语句死活都不执行.
排除所有程序逻辑等问题, 一摸一样的语句换到其他地方都可以运行, 发现唯独那个文件就那一行不管写任何语句都不执行, 最奇怪的是也没有任何错误提示.
经过一番测试, 发现和前一行的注释语句有关系, 删掉注释就可以正常运行了, 看来是忽视了微软产品的中文编码问题了.
由于我IDE中自动创建的文件都是默认 UTF-8
编码的, 而以前之所以都没有发现这个问题, 都运行正常, 是因为我之前注释的末尾都留有空格. 后来修改这个文件的时候, IDE 保存时自动清理代码, 将末尾的空格给清理掉了, 因此出现了中文编码问题, 导致下一行的语句都被识别为注释根本没有执行, 所以也没有报错.
测试文件: test1.sp1
echo "begin"
# 以"口"字结尾的的部分中文字符串, 如: 自动退出窗口
date; echo "line 4 --- "; echo "这是中文内容, 注释语句下面的这一行所有命令都不会被执行123456";