全球主机交流论坛

标题: 编写bat脚本时特殊字符问题 [打印本页]

作者: 深海空间    时间: 2022-4-27 17:11
标题: 编写bat脚本时特殊字符问题
本帖最后由 深海空间 于 2022-4-27 20:06 编辑

直接在cmd窗口可以删除,但是编写成bat之后会因为路径里的特殊字符问题导致路径识别识别,这个特殊字符在bat里要怎么处理?MJJ出出主意~~

忘记把路径贴上来给大家测试了
C:\temp\Qualcomm® Snapdragon™ X55 5G Modem


作者: mbsi    时间: 2022-4-27 17:15
用notepad++之类的写吧,大概不用转编码
作者: 深海空间    时间: 2022-4-27 17:18
mbsi 发表于 2022-4-27 17:15
用notepad++之类的写吧,大概不用转编码

自带的记事本也不行,另存ACNI和UTC-8都测试一遍同样的提示,找不到路径
作者: Origami    时间: 2022-4-27 17:23
默认 chcp 936 存 GB2312(ANSI)
或者 chcp 65001 可以读 UTF-8
作者: whl32    时间: 2022-4-27 17:26
set "path1=C:\temp\....."
del /s /q %path1%
作者: 芭啦啦能量    时间: 2022-4-27 17:27
本帖最后由 芭啦啦能量 于 2022-4-27 17:41 编辑

chcp 65001
set "path1=C:\temp\....."
del /s /q %path1%

修正楼下的代码
作者: whl32    时间: 2022-4-27 17:41
测试无报错,给钱
set "path1=C:\temp\....."
del /s /q %path1%
作者: whl32    时间: 2022-4-27 17:42
芭啦啦能量 发表于 2022-4-27 17:27
chcp 65001
set "path1=C:\temp\....."
del /s /q %path1%

不用声明字符集也可以

作者: 芭啦啦能量    时间: 2022-4-27 17:44
whl32 发表于 2022-4-27 17:42
不用声明字符集也可以

要到bat文件运行
作者: whl32    时间: 2022-4-27 17:47
芭啦啦能量 发表于 2022-4-27 17:44
要到bat文件运行

确实要,我之前有强制了全局声明
作者: hjh    时间: 2022-4-27 18:37
双反斜杠 把\换成\\
作者: 深海空间    时间: 2022-4-27 20:03
hjh 发表于 2022-4-27 18:37
双反斜杠 把\换成\\

非斜杠问题,bat允许这样写,我把后面那个特殊字符路径换成常规路径就可以。
作者: 深海空间    时间: 2022-4-27 20:07
whl32 发表于 2022-4-27 17:42
不用声明字符集也可以

这个方式试过了,没用,确实要楼上说的声明字符集可以解决,路径
C:\temp\Qualcomm® Snapdragon™ X55 5G Modem
作者: 深海空间    时间: 2022-4-27 20:08
Origami 发表于 2022-4-27 17:23
默认 chcp 936 存 GB2312(ANSI)
或者 chcp 65001 可以读 UTF-8

可以,用你的方法解决了,牛
作者: 深海空间    时间: 2022-4-27 20:10
芭啦啦能量 发表于 2022-4-27 17:27
chcp 65001
set "path1=C:\temp\....."
del /s /q %path1%

修正的好,解决问题了,chcp 后确实有效。
作者: HOH    时间: 2022-4-27 20:11
del /s /q C:\temp\Qualco~1




欢迎光临 全球主机交流论坛 (https://4414.19990909.workers.dev/) Powered by Discuz! X3.4