中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-04 15:32
48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » Set 中存在特殊字符的问题
可打印版本  754 / 4
第1楼 peterdocter 发表于 2007-05-15 13:10
中级用户 发帖 95 积分 379
Set 中存在特殊字符的问题
set others=y=2007&m=05&d=11&m=26&rticle=测试
由于程序命令格式原因,不能用""包括参数。我试用^脱字符也不行
第2楼 ttyp 发表于 2007-05-15 13:22
初级用户 发帖 84 积分 180
set others=y=2007^^^&m=05^^^&d=11^^^&m=26^^^&rticle=测试
echo %others%>b.txt
第3楼 peterdocter 发表于 2007-05-15 13:36
中级用户 发帖 95 积分 379
原来要三个^我用两个^多谢了!
第4楼 peterdocter 发表于 2007-05-15 13:46
中级用户 发帖 95 积分 379
不过我发现另一个问题:
set others=y=2007^^^&m=05^^^&d=11^^^&m=26^^^&rticle=测试
echo %others%>b.txt
如果变成
echo "%others%">b.txt就变成原来格式 2007^^^&m=05^^^&d=11...
这样不行,最后格式是这样:
程序 "a=111&b=222&%others%"
第5楼 bjsh 发表于 2007-05-15 15:55
银牌会员 发帖 621 积分 2,000
多次提倡过了;用set时最好养成加引号的习惯;

set "others=y=2007&m=05&d=11&m=26&rticle=测试"

echo "%others%";
试试吧;满足你的要求;

如果echo %others%
就相当于 echo others=y=2007&m=05&d=11&m=26&rticle=测试

因为其中的&,所以会出现异常;
此时根据需要可以修改;
set "others=y=2007^&m=05^&d=11^&m=26^&rticle=测试"
echo %others%

因为楼主要求的是 echo "%others%";有双引号;所以
直接
set "others=y=2007&m=05&d=11&m=26&rticle=测试"
就可以了
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023