中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 搜索D盘*.txt后再按文件名顺序(怎样忽略文件夹顺序呀)
<<   [1] [2]  >>   >
作者:
标题: 搜索D盘*.txt后再按文件名顺序(怎样忽略文件夹顺序呀) 上一主题 | 下一主题
yywd
中级用户





积分 358
发帖 130
注册 2005-11-12
状态 离线
『楼 主』:  搜索D盘*.txt后再按文件名顺序(怎样忽略文件夹顺序呀)

搜索D盘*.txt后再按文件名顺序(怎样忽略文件夹顺序呀) 搜索*.txt后再按文件名顺序(忽略文件夹顺序)排序写入完整路径到1.txt 怎样忽略文件夹顺序呀 例如D盘有 D:\b.txt D:\d.txt D:\1\c.txt D:\1\f.txt D:\2\1\a.txt D:\2\1\g.txt D:\2\1\1\e.txt 则1.txt如下 D:\2\1\a.txt D:\b.txt D:\1\c.txt D:\d.txt D:\2\1\1\e.txt D:\1\f.txt D:\2\1\g.txt


2008-6-19 18:19
查看资料  发短消息  网志   编辑帖子  回复  引用回复
pusofalse
银牌会员




积分 1604
发帖 646
注册 2008-4-13
状态 离线
『第 2 楼』:  

试下这个。。。 dir d:\*.txt /b/s/a-d/on




心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^
2008-6-19 18:26
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
yywd
中级用户





积分 358
发帖 130
注册 2005-11-12
状态 离线
『第 3 楼』:  

Originally posted by pusofalse at 2008-6-19 18:26: 试下这个。。。 dir d:\*.txt /b/s/a-d/on
没有忽略文件夹顺序呀 怎样忽略文件夹顺序呀


2008-6-19 18:29
查看资料  发短消息  网志   编辑帖子  回复  引用回复
pusofalse
银牌会员




积分 1604
发帖 646
注册 2008-4-13
状态 离线
『第 4 楼』:  

for %%a in (a b c d e f g) do dir d:\%%a.txt /b/s/a-d 无比低慢的代码,不过应该会满足你的要求。。




心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^
2008-6-19 18:35
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
yywd
中级用户





积分 358
发帖 130
注册 2005-11-12
状态 离线
『第 5 楼』:  

Originally posted by pusofalse at 2008-6-19 18:35: for %%a in (a b c d e f g) do dir d:\%%a.txt /b/s/a-d 无比低慢的代码,不过应该会满足你的要求。。
好像不行, D盘的txt文件名也并不确定


2008-6-19 18:50
查看资料  发短消息  网志   编辑帖子  回复  引用回复
pusofalse
银牌会员




积分 1604
发帖 646
注册 2008-4-13
状态 离线
『第 6 楼』:  

你确定子目录下不会有重名的文件吗~?而且文件名全是字母?




心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^
2008-6-19 18:57
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
yywd
中级用户





积分 358
发帖 130
注册 2005-11-12
状态 离线
『第 7 楼』:  

Originally posted by pusofalse at 2008-6-19 18:57: 你确定下不会有重名的文件吗~?而且文件名全是字母?
子目录不确定有重名的文件,而且文件名不全是字母,可能是中文+字母+数字甚至符号呀


2008-6-19 19:05
查看资料  发短消息  网志   编辑帖子  回复  引用回复
pusofalse
银牌会员




积分 1604
发帖 646
注册 2008-4-13
状态 离线
『第 8 楼』:  

@echo off&setlocal enabledelayedexpansion for /r d:\ %%a in (*.txt) do set "%%~na=%%a" for %%a in (a b c d e f g h i j k l m n o p q r s t u v w x y z) do if defined %%a echo !%%a! pause>nul




心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^
2008-6-19 19:05
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
pusofalse
银牌会员




积分 1604
发帖 646
注册 2008-4-13
状态 离线
『第 9 楼』:  

Originally posted by yywd at 2008-6-19 07:05 PM: 子目录不确定有重名的文件,而且文件名不全是字母,可能是中文+字母+数字甚至符号呀
Oh my god.... 那你想要输出时,字母在最前面?然后数字,再后中文。。。 还是中文最前,数字最后?~ 中文实在是不好考虑。。。。




心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^
2008-6-19 19:12
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
yywd
中级用户





积分 358
发帖 130
注册 2005-11-12
状态 离线
『第 10 楼』:  

Originally posted by pusofalse at 2008-6-19 19:12: Oh my god.... 那你想要输出时,字母在最前面?然后数字,再后中文。。。 还是中文最前,数字最后?~ 中文实在是不好考虑。。。。
输出时数字在最前面,然后字母,再后中文。。。


2008-6-19 19:42
查看资料  发短消息  网志   编辑帖子  回复  引用回复
pusofalse
银牌会员




积分 1604
发帖 646
注册 2008-4-13
状态 离线
『第 11 楼』:  

@echo off&setlocal enabledelayedexpansion for /r d:\ %%a in (*.txt) do set "#%%~na=%%a" for /f "tokens=2 delims==" %%a in ('set #') do echo %%a pause>nul 输出类似于: 1 2 a b c d dp dp23 dpa DP e f 汉字 .... [ Last edited by pusofalse on 2008-6-19 at 07:53 PM ]




心绪平和,眼藏静谧,无比安稳的火... Purification of soul...Just a false...^_^
2008-6-19 19:49
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
balinger
中级用户




积分 356
发帖 115
注册 2004-7-27
状态 离线
『第 12 楼』:  

@echo off if exist "%temp%\list.txt" del /f/a/q "%temp%\list.txt" for /r d: %%i in (*.txt) do echo %%~ni\%%i>>"%temp%\list.txt" for /f "tokens=1* delims=\" %%i in ('more %%temp%%\list.txt^|sort') do echo %%j>>list.txt del /f/a/q "%temp%\list.txt" pause


2008-6-19 19:59
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
yywd
中级用户





积分 358
发帖 130
注册 2005-11-12
状态 离线
『第 13 楼』:  

Originally posted by pusofalse at 2008-6-19 19:49: @echo off&setlocal enabledelayedexpansion for /r d:\ %%a in (*.txt) do set "#%%~na=%%a" for /f "tokens=2 delims==" %%a in ('set #') do echo %%a pause>nul 输出类似 ...
谢谢您的热心帮助, 这个可以用的


2008-6-19 20:08
查看资料  发短消息  网志   编辑帖子  回复  引用回复
yywd
中级用户





积分 358
发帖 130
注册 2005-11-12
状态 离线
『第 14 楼』:  

Originally posted by balinger at 2008-6-19 19:59: @echo off if exist "%temp%\list.txt" del /f/a/q "%temp%\list.txt" for /r d: %%i in (*.txt) do echo %%~ni\%%i>>"%temp%\list.txt" for /f "tokens=1* delims= ...
谢谢您的热心帮助,您 这个也可以用的


2008-6-19 20:11
查看资料  发短消息  网志   编辑帖子  回复  引用回复
PPdos
高级用户




积分 783
发帖 268
注册 2006-12-26
状态 离线
『第 15 楼』:  

小写了一行 不知是否楼住所要求的 只是将文件名 放在了路径前边 比较快
(for /r d:\ %i in (*.txt) do echo %~nxi %~si)|sort /o d:/cn-dos.txt


   此帖被 +1 点积分    点击查看详情   
评分人:【 WANKOILZ 分数: +1  时间:2008-6-19 23:14




菩提本无树,明镜亦非台,本来无一物,何处惹尘埃.
2008-6-19 20:51
查看资料  发短消息  网志   编辑帖子  回复  引用回复
<<   [1] [2]  >>   >
请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


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



论坛跳转: