中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
作者:
标题: 怎样用DIR找指定大小的文件 上一主题 | 下一主题
bob1989
中级用户





积分 322
发帖 144
注册 2007-1-10
状态 离线
『楼 主』:  怎样用DIR找指定大小的文件

朋友发了一张5M多的JPG图片给我
请问我用DIR怎么找到这个JPG文件    我的电脑里还有6M的JPG
我只想让他显示5~6M的JPG文件
请问整样做

2007-2-7 07:10
查看资料  发短消息 网志   编辑帖子  回复  引用回复
oilio
高级用户

前进者


积分 641
发帖 303
注册 2007-1-10
状态 离线
『第 2 楼』:  

我来抛砖引玉一下。这个好像只用dir是做不到的,需要和其它的配合才有可能做到。dir可以按文件大小排序列出,也应该比较好找一些。 可以这样只列出.jpg格式的文件,然后把.jpg的文件按大小排序。
dir *.jpg /a-d/os这样可以列出当前目录下的所有jpg格式文件,默认是从小到大的顺序排列,也可以在o和s之间加一个减号。就会从大到小排。我知道的只有这么多,希望可以帮到你。祝你好运。

[ Last edited by oilio on 2007-2-6 at 08:24 PM ]



我相信总有一天,总会遇到一个人可以相濡以沫、相吻以湿!
2007-2-7 09:12
查看资料  发短消息 网志   编辑帖子  回复  引用回复
bob1989
中级用户





积分 322
发帖 144
注册 2007-1-10
状态 离线
『第 3 楼』:  

这个我也知道啊`     DIR + FOR + SET 能判断吗`?

我只要他能显示出来就可以了  不追求什么格式

2007-2-8 06:08
查看资料  发短消息 网志   编辑帖子  回复  引用回复
vkill
金牌会员





积分 4103
发帖 1744
注册 2006-1-20
来自 甘肃.临泽
状态 离线
『第 4 楼』:  

for %? in ('dir ') do if  5.. lss %~z?

大概这个意思,自己试吧

2007-2-8 06:31
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
DOSforever
金牌会员





积分 4639
发帖 2239
注册 2005-1-30
状态 离线
『第 5 楼』:  

我又要来宣传一下 4DOS 了

只想让他显示5~6M的JPG文件:

dir/[s5000000,60000000] *.jpg

dir/[s5m,6m] *.jpg

就这么简单

  Quote:
4DOS Help Topic:  Size Ranges


Size ranges simply select files whose size is between the limits given.  For
example, /[s10000,20000] selects files between 10,000 and 20,000 bytes long.

Either or both values in a size range can end with "k" to indicate thousands
of bytes, "K" to indicate kilobytes (1,024 bytes), "m" to indicate millions
of bytes, or "M" to indicate megabytes (1,048,576 bytes).  For example, the
range above could be rewritten as /[s10k,20k].

The second argument of a size range is optional.  If you use a single
argument, like /[s10k], you will select files of that size or larger.  You
can also precede the second argument with a plus sign [+]; when you do, it
is added to the first value to determine the largest file size to include in
the search.  For example,  /[s10k,+1k] select files from 10,000 through
11,000 bytes in size.

Some further examples of size ranges:

     Specification       Selects Files

     /[s0,0]             of length zero (empty)
     /[s1M]              1 megabyte or more in length
     /[s10k,+200]        between 10,000 and 10,200 bytes





DOS倒下了,但永远不死
DOS NEVER DIES !

投票调查:
http://www.cn-dos.net/forum/viewthread.php?tid=46187

本人尚未解决的疑难问题:
http://www.cn-dos.net/forum/viewthread.php?tid=15135
http://www.cn-dos.net/forum/viewthread.php?tid=47663
http://www.cn-dos.net/forum/viewthread.php?tid=48747
2007-2-11 16:54
查看资料  发短消息 网志   编辑帖子  回复  引用回复
bob1989
中级用户





积分 322
发帖 144
注册 2007-1-10
状态 离线
『第 6 楼』:  

E:\Documents and Settings\new>dir/[s5000000,60000000] *.jpg
无效的命令行开关 - "[s5000000"。

2007-2-14 04:30
查看资料  发短消息 网志   编辑帖子  回复  引用回复
Michael
钻石会员





积分 10046
发帖 3039
注册 2002-11-11
状态 离线
『第 7 楼』:  

楼上的老大。。。。。。



简单就是美
2007-2-14 06:38
查看资料  发短消息 网志   编辑帖子  回复  引用回复
qingfushuan
高级用户





积分 502
发帖 327
注册 2006-12-30
状态 离线
『第 8 楼』:  试了试

@echo off
for /f "tokens=3,4 skip=5 " %%a in ('dir /a-d *.jpg') do echo %%a   %%b >>1.txt
for /f "tokens=1,2 delims=," %%a in (1.txt) do echo %%a%%b >>2.txt
for /f "tokens=1,2" %%a in (2.txt) do if %%a geq 50000 move %%b c:\temp 2>nul
del 1.txt 2.txt
pause

就是中间文件太多了,水平有限,望过往高手指教

2007-2-14 22:20
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: