中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-06-20 08:08
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » [CMD]理解变量字符的截取功能 查看 22,973 回复 100
46 发表于 2007-06-17 13:30 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
19年会员
UID 59080
状态 离线
RE bd123456789:

1、pause>nul 的效果和单独的 pause 命令的效果一样,只是没有显示“请按任意键继续. . .”的字样,这里是>nul的作用,具体分析可以搜索一下论坛相关的讨论贴子。

2、参考下面两个链接:
变量延迟详解(新手推荐)
http://www.cn-dos.net/forum/viewthread.php?tid=28273&fpage=1

什么情况下该使用变量延迟?
http://www.cn-dos.net/forum/viewthread.php?tid=20733&fpage=1
47 发表于 2007-06-24 07:08 ·  中国 浙江 嘉兴 海宁市 电信
中级用户
★★
积分 360
发帖 216
注册 2007-05-29 17:41
19年会员
UID 89677
性别 男
状态 离线
呵呵,实用
非常感谢!
48 发表于 2007-06-24 20:03 ·  中国 上海 东方有线
中级用户
★★
积分 218
发帖 86
注册 2006-08-10 10:45
19年会员
UID 60205
性别 男
状态 离线
这东西灵的 已收藏 多谢LZ
49 发表于 2007-06-24 23:29 ·  中国 上海 电信
中级用户
★★
积分 231
发帖 112
注册 2007-06-19 20:44
19年会员
UID 91827
性别 男
状态 离线
对新人帮助很大啊~
50 发表于 2007-09-28 11:54 ·  中国 山西 太原 万柏林区 电信
初级用户
积分 49
发帖 26
注册 2007-09-11 15:38
18年会员
UID 97109
性别 男
状态 离线
真是强贴
51 发表于 2007-10-09 02:43 ·  中国 湖南 益阳 电信
新手上路
积分 17
发帖 10
注册 2007-01-22 04:52
19年会员
UID 77300
性别 男
状态 离线
楼主真是一位好的引导老师啊,多写点啊。。。(别拍偶。。。。呵呵)
52 发表于 2007-10-09 10:19 ·  中国 广东 广州 海珠区 电信
初级用户
积分 81
发帖 35
注册 2006-10-16 22:11
19年会员
UID 65994
状态 离线
学习了。
谢谢lxmxn!!!
53 发表于 2007-10-20 02:05 ·  中国 河北 廊坊 联通
初级用户
积分 42
发帖 21
注册 2007-10-03 03:11
18年会员
UID 98806
性别 男
状态 离线
还可以这样传递啊!!!
54 发表于 2007-10-31 18:06 ·  中国 上海 东方有线
新手上路
积分 16
发帖 8
注册 2007-10-31 17:41
18年会员
UID 101308
性别 男
状态 离线
请容许我发表一个很低级得问题
版主 看了你得很多帖子 心里只有2个字“佩服”

我是刚刚才接触 这类东西 有很多不明白 就比你刚刚发的这个 我演示过了
但是看不明白什么意思 希望你们不要见笑
我真的希望在今后的学习中能得到大家的帮助

谢谢
55 发表于 2007-10-31 18:26 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
19年会员
UID 59080
状态 离线
Originally posted by fengjian at 2007-10-31 18:06:
请容许我发表一个很低级得问题
版主 看了你得很多帖子 心里只有2个字“佩服”

我是刚刚才接触 这类东西 有很多不明白 就比你刚刚发的这个 我演 ...

其实这个变量截取就相当于其它语言里面的substr函数一样,可以截取一个字符串中指定位置的子串。

比如一个字符串的前两位是你想要的,那么就可以用变量截取来获得你想要的字符串。

比如
set string=cn.sina.com
set new=%string:~0,2%
那么%new%的值就是%string%的前两个字符了,即“cn”。
56 发表于 2007-11-04 00:46 ·  中国 上海 静安区 中移铁通
初级用户
积分 48
发帖 23
注册 2007-10-24 09:46
18年会员
UID 100622
性别 男
状态 离线
for /l %%a in (1,3,15) do (
for /l %%b in (1,4,15) do (
call :printf %%a %%b
)
)
能不能解释下(1,3,15) 和(1,4,15) 是控制什么的么?
57 发表于 2007-11-04 00:49 ·  中国 上海 静安区 中移铁通
初级用户
积分 48
发帖 23
注册 2007-10-24 09:46
18年会员
UID 100622
性别 男
状态 离线
接上面
貌似
set var=0123456789ABCDEF
这个变量下面的FOR没用到他的值?
不懂哎 ~~
58 发表于 2007-11-04 09:59 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
19年会员
UID 59080
状态 离线
RE z310394543:

1、(1,3,15) 是控制for循环中的变量 %%i 的,表示一个等差数列,即从1开始,以3为步长增长的数列,但数最大为15。

2、var 这个变量在 call 子过程中用到了,可以搜索一下论坛关于 call 用法的例子。
本帖最近评分记录 (共 1 条) 点击查看详情
评分人分数时间
z310394543 +2 2007-11-04 20:57
59 发表于 2007-11-04 20:58 ·  中国 上海 静安区 中移铁通
初级用户
积分 48
发帖 23
注册 2007-10-24 09:46
18年会员
UID 100622
性别 男
状态 离线
斑竹的效率真高
60 发表于 2007-11-09 20:10 ·  中国 江苏 徐州 电信
新手上路
积分 6
发帖 3
注册 2007-10-23 20:57
18年会员
UID 100583
性别 男
状态 离线
根本没讲用法,会的还是会,不会的还是不会
论坛跳转: