中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-12 09:48
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [未解]替换变量中%号 查看 722 回复 5
楼 主 [未解]替换变量中%号 发表于 2009-08-22 10:19 ·  中国 重庆 电信
初级用户
积分 38
发帖 22
注册 2008-08-14 22:58
17年会员
UID 123209
性别 男
状态 离线
以下代码都未通过
@echo off
set "word=123%"
set "word=%word:%=%%%"
echo %word%
pause

@echo off
set "word=123%"
setlocal enabledelayedexpansion
set "word=!word:%=%%!"
echo !word!
setlocal disabledelayedexpansion
echo %word%
pause


@echo off
set "word=123%"
set "word=%word:%=^%%"
echo %word%
pause

@echo off
set "word=123%"
setlocal enabledelayedexpansion
set "word=!word:%=^%!"
echo !word!
setlocal disabledelayedexpansion
echo %word%
pause

[ Last edited by xiaoyong12 on 2009-8-29 at 08:53 ]
2 发表于 2009-08-22 10:57 ·  中国 北京 阿里云BGP服务器
银牌会员
★★★
永远的菜鸟
积分 1,335
发帖 574
注册 2007-11-27 12:50
18年会员
UID 103929
性别 男
来自 广西
状态 离线
@echo off
Setlocal Enabledelayedexpansion
set "word=123%%"
set "word=!word:%%=%%%%!"
echo.%word%
pause
3 发表于 2009-08-29 08:55 ·  中国 重庆 电信
初级用户
积分 38
发帖 22
注册 2008-08-14 22:58
17年会员
UID 123209
性别 男
状态 离线
你这个是两个%号,一个%号怎么办
4 发表于 2009-08-29 09:29 ·  中国 广东 广州 天河区 电信
银牌会员
★★★★
SuperCleaner
积分 2,362
发帖 1,133
注册 2008-02-02 21:36
18年会员
UID 110072
性别 男
状态 离线
你 别提了
看看直接显示的

set a=123%
echo %a%
pause
5 发表于 2009-09-02 09:57 ·  中国 重庆 电信
初级用户
积分 38
发帖 22
注册 2008-08-14 22:58
17年会员
UID 123209
性别 男
状态 离线
没有显示%
6 发表于 2009-09-02 10:05 ·  中国 吉林 延边朝鲜族自治州 电信
银牌会员
★★★
正在学习中的菜鸟...
积分 1,039
发帖 897
注册 2009-03-01 15:34
17年会员
UID 140302
性别 男
来自 在地狱中仰望天堂
状态 离线
代码 输出结果
ECHO 寒夜^^孤星 >>test.txt 寒夜^孤星
ECHO 寒夜^&孤星 >>test.txt 寒夜&孤星
ECHO 寒夜^|孤星 >>test.txt 寒夜|孤星
ECHO 寒夜^<孤星 >>test.txt 寒夜<孤星
ECHO 寒夜^>孤星 >>test.txt 寒夜>孤星
ECHO 寒夜^>^>孤星 >>test.txt 寒夜>>孤星
ECHO 寒"夜^"孤"星 >>test.txt 寒"夜"孤"星
ECHO "寒夜""孤星" >>test.txt "寒夜""孤星"
ECHO 寒夜%%孤星 >>test.txt 寒夜%孤星
ECHO %%寒夜孤星%% >>test.txt %寒夜孤星%
ECHO 寒夜%%%%孤星 >>test.txt 寒夜%%孤星
论坛跳转: