![Board logo](images/default/logo.gif)
标题: [文件操作] [已解决]批处理如何查找并显示重复文件? [打印本页]
作者: zhanglei1371 时间: 2013-12-3 22:07 标题: [已解决]批处理如何查找并显示重复文件?
本帖最后由 zhanglei1371 于 2013-12-4 11:47 编辑
在我的优盘I中存在不少重复文件,分布在不同的文件夹中,如何用批处理命令将重复文件的路径输出到文本并显示重复次数?
如I:\12\3s.jpg和I:\46\25\3s.jpg和I:\77\3s.jpg
输出结果就显示为:
3s.jpg重复了三次,位置为:
I:\12\3s.jp
I:\46\25\3s.jpg
I:\77\3s.jpg
其他的以此类推
作者: apang 时间: 2013-12-3 23:59
本帖最后由 apang 于 2013-12-4 16:10 编辑
- set x=Nothing '&cls&dir/a-d/b/s I:\* | cscript -nologo -e:vbscript "%~0" &pause&exit/b
-
- Set fso = CreateObject("Scripting.FileSystemObject")
- Set dic = CreateObject("Scripting.Dictionary")
- Do Until WScript.StdIn.AtEndOfStream
- file = WScript.StdIn.ReadLine
- name = LCase(Right(file,Len(file)-InStrRev(file,"\")))
- If dic.Exists(name) Then
- dic.Item(name) = dic.Item(name) & vbCrLf & file
- Else dic.Add name,file
- End If
- Loop
-
- For Each a in dic.Keys
- If InStr(dic.Item(a),vbCrLf) Then
- n = UBound(Split(dic.Item(a),vbCrLf)) + 1
- str = str & a & "重复了" & n & "次,位置:" & vbCrLf
- str = str & dic.Item(a) & vbCrLf & vbCrLf
- End If
- Next
-
- fso.CreateTextFile("Result.txt",true).Write str
复制代码
作者: zhanglei1371 时间: 2013-12-4 10:28
回复 2# apang
感谢阿胖大师的解答!
还想再多问下,在cscript后可执行的其他脚本,除了vbs和jscript外,还有没其他的?
作者: apang 时间: 2013-12-4 16:28
回复 3# zhanglei1371
菜鸟一只,不是什么大师
vbs我也是新手,其它的我不知道。。。
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |