中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何生成一个升序的批量下载列表(解决)
作者:
标题: 如何生成一个升序的批量下载列表(解决) 上一主题 | 下一主题
su2353
初级用户





积分 152
发帖 63
注册 2005-8-18
状态 离线
『楼 主』:  如何生成一个升序的批量下载列表(解决)

如下:
copy \\server\001.pic d:\
copy \\server\002.pic d:\
                     .
       ............ 888......
                     .
                     n
n可以自己指定
---------------------------------------------------------------------------------------------------------------------


楼下的代码测试后只有当n小于10时才行,如果n是10变成0010.pic

n是999时,变成00999.pic

有无变法改进,让n的位数固定,当然,能限定n的倍数就更好了

[ Last edited by su2353 on 2007-11-27 at 04:36 PM ]

2007-11-26 20:44
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
sonicandy
中级用户





积分 273
发帖 91
注册 2007-5-7
状态 离线
『第 2 楼』:  

for /l %%i in (1,1,n) do (
    set j=00%%i
    echo copy \\server\00%j:~-3%.pic d:\ >> list.txt
)
参照3楼的修改了一下*_*

[ Last edited by sonicandy on 2007-11-26 at 09:20 PM ]

2007-11-26 21:03
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
everest79
金牌会员

一叶枝头,万树皆春



积分 2564
发帖 1127
注册 2006-12-25
状态 离线
『第 3 楼』:  

for /l %i in (1,1,n) do (
set val=00%i
call echo copy \\server\%val:~-3%.pic D:\
)

2007-11-26 21:06
查看资料  发短消息 网志   编辑帖子  回复  引用回复
su2353
初级用户





积分 152
发帖 63
注册 2005-8-18
状态 离线
『第 4 楼』:  

那怎么自己指定N呢

2007-11-26 21:15
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
su2353
初级用户





积分 152
发帖 63
注册 2005-8-18
状态 离线
『第 5 楼』:  

还有,如果想生成的升序的数字位数是是这样的:
1的是时候是一位,10的时候是两位
数字前面没有0,该是几位就是几位

2007-11-26 21:18
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
su2353
初级用户





积分 152
发帖 63
注册 2005-8-18
状态 离线
『第 6 楼』:  

先谢谢二楼,三楼的朋友,基本是问题是解决了

再请看看5楼,那样升序应该怎样升呢

2007-11-26 21:20
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
sonicandy
中级用户





积分 273
发帖 91
注册 2007-5-7
状态 离线
『第 7 楼』:  

那怎么自己指定N呢

n随便取个数就可以了,比如100.

还有,如果想生成的升序的数字位数是是这样的:
1的是时候是一位,10的时候是两位
数字前面没有0,该是几位就是几位

那就更简单了:
for /l %%i in (1,1,100) do echo copy \\server\%%i.pic d:\ >> list.txt

2007-11-26 21:24
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
su2353
初级用户





积分 152
发帖 63
注册 2005-8-18
状态 离线
『第 8 楼』:  



  Quote:
Originally posted by sonicandy at 2007-11-26 21:24:
那怎么自己指定N呢

n随便取个数就可以了,比如100.

还有,如果想生成的升序的数字位数是是这样的:
1的是时候是一位,10的时候是两位
数字前面没有 ...

学习了
谢谢你的热情帮助

2007-11-26 21:29
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
su2353
初级用户





积分 152
发帖 63
注册 2005-8-18
状态 离线
『第 9 楼』:  

未解决,帮帮忙

2007-11-27 15:55
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
zh159
金牌会员




积分 3687
发帖 1467
注册 2005-8-8
状态 离线
『第 10 楼』:  



  Quote:
Originally posted by su2353 at 2007-11-27 15:55:
未解决,帮帮忙

改改第 3 楼的:
◎echo off
setlocal EnableDelayedExpansion
for /l %%i in (1,1,100) do (
set val=00%%i
echo copy \\server\!val:~-3!.pic D:\
)
[ Last edited by zh159 on 2007-11-27 at 04:10 PM ]



2007-11-27 16:06
查看资料  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: