![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-09 07:33 |
共 47,811 主题排行 / 349,895 发帖 / 今日 0 篇 / 48,253 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 请教:如何进入某个特定文件夹下的第二个子文件夹? |
| 可打印版本 1,470 / 12 |
| 第1楼 liaowm | 发表于 2008-07-27 22:34 |
| 新手上路 发帖 7 积分 16 | |
|
请教:如何进入某个特定文件夹下的第二个子文件夹? 在某个特定的文件夹下有几个以日期为名字的子文件夹,例如:2008-01-01,2008-01-02,2008-01-03等(此子文件夹为程序自动创建),要实现以下功能:1、将第二个子文件夹里的所有文件移动到一个固定的文件夹中;2、删除第二个子文件夹。希望通过批处理实现此功能,方便扩展为第四个子文件夹等,机器全部为XP操作系统。需要详细的实现方法和步骤,非常感谢!
|
|
| 第2楼 HAT | 发表于 2008-07-27 22:52 |
| 版主 发帖 5,017 积分 9,023 | |
| 第3楼 liaowm | 发表于 2008-07-29 07:27 |
| 新手上路 发帖 7 积分 16 | |
|
谢谢HAT,请再详细指教! 对不起您的指点,我没有弄明白。请详细注明一下,可以么?
|
|
| 第4楼 HAT | 发表于 2008-07-29 12:48 |
| 版主 发帖 5,017 积分 9,023 | |
|
哪句不懂,就问哪句。如果全部不懂,就先看看教程。
|
|
| 第5楼 liaowm | 发表于 2008-07-29 18:06 |
| 新手上路 发帖 7 积分 16 | |
|
感谢HAT! 看了下教程,查了下参数,基本明白了,FOR语句还是没能完全理解,但不影响应用了。
“if !count! equ 2”中的数字2是否可以使用“set FolderNo=2”中的变量“FolderNo”,写成“if !count! equ %FolderNo%”是否可行? 另外:如果在本机使用“source$”和“target$”这样的共享文件夹为源和目的文件夹,文件夹的路径变量写成形如: set SrcFolder=\\计算机名\source$\test set DstFolder=\\计算机名\target$\a 这样的形式是否可行。如果可行,本机的“计算机名”如何在批处理中定义并可以调用。请指教,谢谢! [ Last edited by liaowm on 2008-7-29 at 06:11 PM ] |
|
| 第6楼 HAT | 发表于 2008-07-29 18:09 |
| 版主 发帖 5,017 积分 9,023 | |
|
计算机名
|
|
| 第7楼 liaowm | 发表于 2008-07-30 21:58 |
| 新手上路 发帖 7 积分 16 | |
|
感谢HAT! 经过测试,批处理完全能够满足我的要求,并运行良好,谢谢HAT,非常感谢!
|
|
| 第8楼 liaowm | 发表于 2008-07-31 12:16 |
| 新手上路 发帖 7 积分 16 | |
|
再次请教! 批处理正式应用时发现一个问题,文件移动速度太慢。由于测试时,所用的文件较小,运行时速度比较快,文件很快就移动完成。实际应用时,大的文件移动速度比较慢,感觉比通过网上邻居复制还要慢,应该如何解决。请指教!
我在批处理中,将文件夹进行了以下形式的引用: set SFolder=\\%computername%\dl$ set TFolder1=\\%computername%\biao$ set TFolder2=\\%computername%\one$ 是否与此有关,该如何解决?是否必须将文件夹路径中的"\\%computername%\"写成"c:\test\linshi"这样的形式?文件夹路径中包含中文名有没有影响?谢谢! |
|
| 第9楼 huahua0919 | 发表于 2008-07-31 13:41 |
| 银牌会员 发帖 780 积分 1,608 | |
|
写成你这个形式,不就是你本机的路径了啊。
|
|
| 第10楼 liaowm | 发表于 2008-07-31 13:51 |
| 新手上路 发帖 7 积分 16 | |
|
写成以下这种形式:
set SFolder=\\%computername%\dl$ set TFolder1=\\%computername%\biao$ set TFolder2=\\%computername%\one$ 在批处理中,进行文件移动的时候(在同一个磁盘分区),速度比较慢。而实际上,在资源管理器中进行文件移动的操作时,速度是相当快地。 |
|
| 第11楼 huahua0919 | 发表于 2008-07-31 13:56 |
| 银牌会员 发帖 780 积分 1,608 | |
|
在同一分区下你怎么会用\\的形式呢?
那样当然慢了 直接就是 set SFolder=%computername%\dl$ |
|
| 第12楼 HAT | 发表于 2008-07-31 14:22 |
| 版主 发帖 5,017 积分 9,023 | |
|
如果拷贝到本机,不要使用\\%computername%
如果拷贝到远程机器,用IP地址代替%computername% |
|
| 第13楼 liaowm | 发表于 2008-07-31 15:40 |
| 新手上路 发帖 7 积分 16 | |
|
我知道了,谢谢!
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |