中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 这两个枚举批处理有什么不一样
作者:
标题: 这两个枚举批处理有什么不一样 上一主题 | 下一主题
mqi
初级用户





积分 28
发帖 11
注册 2006-11-5
状态 离线
『楼 主』:  这两个枚举批处理有什么不一样

@echo off
@mode con:cols=80 lines=8
@title 枚举并适时显示
@color 71
@echo   正在枚举中..........
@for /r %%d in (*.*) do @(
              @echo %%d >>result.txt && @(cls && echo%%d)
      )                             
@title 枚举并适时显示  
@start result.txt  
@echo.  
@echo   OK,完成 正在退出..........
@dir %windir% /a /s>nul
exit

下面这个是我改的
@echo off
@mode con:cols=80 lines=8
@title 枚举并适时显示
@color 71
@echo   正在枚举中..........
@for /r %%d in (*.*) do @(
              @echo %%d >>result.txt  
      )                             
@title 枚举并适时显示  
@start result.txt  
@echo.  
@echo   OK,完成 正在退出..........
exit

另外怎样才能使生成的result.txt 中的文件不显路径

2006-12-20 22:51
查看资料  发短消息 网志   编辑帖子  回复  引用回复
hxuan999
中级用户

DOS之日


积分 337
发帖 161
注册 2006-11-4
状态 离线
『第 2 楼』:  

1,上面的那个就是多了一句 && @(cls && echo%%d) ,这样就会在输出到result.txt文件的同时也在屏幕上显示正在枚举的文件名.
2,想不显示路径可以用%%~nxd,另外最好加一个对result.txt文件做个删除处理.
代码如下:
@echo off
@mode con:cols=80 lines=8
@title 枚举并适时显示
@color 71
@echo   正在枚举中..........
if exist result.txt @del result.txt /f/q
@for /r %%d in (*.*) do @(
              @echo %%~nxd >>result.txt && @(cls && echo%%~nxd)
      )                             
@title 枚举并适时显示  
@start result.txt  
@echo.  
@echo   OK,完成 正在退出..........
@dir %windir% /a /s>nul
exit
[ Last edited by hxuan999 on 2006-12-20 at 10:00 PM ]



for /f %%h in (`echo hxuan`) do for /f %%x in (`echo hxuan`) do if %%h==%%x nul
2006-12-21 09:58
查看资料  发送邮件  发短消息 网志  OICQ (33899867)  编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 3 楼』:  


  最后一句"dir %windir% /a /s>nul"是延时的作用么?


2006-12-21 11:22
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
hxuan999
中级用户

DOS之日


积分 337
发帖 161
注册 2006-11-4
状态 离线
『第 4 楼』:  

是的,这样就可以在执行EXIT前看到 OK,完成 正在退出.......... 而不是一闪而过了.



for /f %%h in (`echo hxuan`) do for /f %%x in (`echo hxuan`) do if %%h==%%x nul
2006-12-22 01:44
查看资料  发送邮件  发短消息 网志  OICQ (33899867)  编辑帖子  回复  引用回复
mqi
初级用户





积分 28
发帖 11
注册 2006-11-5
状态 离线
『第 5 楼』:  

谢谢hxuan999老兄了

2006-12-22 02:29
查看资料  发短消息 网志   编辑帖子  回复  引用回复
redtek
金牌会员





积分 2902
发帖 1147
注册 2006-9-21
状态 离线
『第 6 楼』:  

hxuan999兄 “@dir %windir% /a /s>nul” 这句用得又有创意又好玩~:)
欣赏~~



    Redtek,一个永远在网上流浪的人……

_.,-*~'`^`'~*-,.__.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._,_.,-*~'`^`'~*-,._
2006-12-22 02:38
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
hxuan999
中级用户

DOS之日


积分 337
发帖 161
注册 2006-11-4
状态 离线
『第 7 楼』:  

哦,那是楼主给的程序中就有的.呵呵



for /f %%h in (`echo hxuan`) do for /f %%x in (`echo hxuan`) do if %%h==%%x nul
2006-12-22 23:05
查看资料  发送邮件  发短消息 网志  OICQ (33899867)  编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 8 楼』:  


  如果这样,那延迟的方法不是很多了?


2006-12-22 23:18
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: