中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-09 18:44
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 一句疑问 查看 928 回复 2
楼 主 一句疑问 发表于 2008-09-20 09:40 ·  中国 四川 遂宁 电信
初级用户
★★
积分 121
发帖 54
注册 2008-01-10 19:13
18年会员
UID 108238
性别 男
状态 离线
小弟在拜读了“去除变量不同部分的空格”之后,有一小疑问:
请问:
set "str=%str: =%"
这句是什么意思呢?可以去除所有空格~~

原贴地址:
http://www.cn-dos.net/forum/viewthread.php?tid=25172
不懂就要虛心請教!
2 发表于 2008-09-20 10:19 ·  中国 河北 保定 移动
铂金会员
★★★★
网络独行侠
积分 6,962
发帖 2,753
注册 2003-04-16 00:00
23年会员
UID 1565
性别 男
来自 河北保定
状态 离线
set /?

环境变量替换已如下增强:

%PATH:str1=str2%

会扩展 PATH 环境变量,用 "str2" 代替扩展结果中的每个 "str1"。
要有效地从扩展结果中删除所有的 "str1","str2" 可以是空的。
str1" 可以以星号打头;在这种情况下,"str1" 会从扩展结果的
开始到 str1 剩余部分第一次出现的地方,都一直保持相配。

Environment variable substitution has been enhanced as follows:

%PATH:str1=str2%

would expand the PATH environment variable, substituting each occurrence
of "str1" in the expanded result with "str2". "str2" can be the empty
string to effectively delete all occurrences of "str1" from the expanded
output. "str1" can begin with an asterisk, in which case it will match
everything from the beginning of the expanded output to the first
occurrence of the remaining portion of str1.


在set "str=%str: =%"中,str相当于例子中的path,而:后面的空格相当于str1,而对应str2的是空字符串(也就是什么也没有),所以这个命令就是将str中的所有空格替换为空(也就是去掉)。
偶只喜欢回答那些标题和描述都很清晰的帖子!
如想解决问题,请认真学习“这个帖子”和“这个帖子”并努力遵守,如果可能,请告诉更多的人!
3 发表于 2008-09-21 00:11 ·  中国 四川 遂宁 电信
初级用户
★★
积分 121
发帖 54
注册 2008-01-10 19:13
18年会员
UID 108238
性别 男
状态 离线
是懂非懂,学习。
谢谢热心的朋友!
不懂就要虛心請教!
论坛跳转: