标题: [已结](难题)怎样用BAT查找被加密过的文件头RAR的文件
[打印本页]
作者: cad55
时间: 2009-4-7 23:52
标题: [已结](难题)怎样用BAT查找被加密过的文件头RAR的文件
怎样用BAT查找被加密过的文件头RAR的文件
(注意:不非是扩展名显示为RAR的文件)
而是真正的RAR文件。
并后成TXT列表。(路径与名称)
[
Last edited by cad55 on 2009-4-13 at 00:12 ]
作者: tireless
时间: 2009-4-8 03:12
findstr /bm "Rar!" * > RarFiles.txt
作者: cad55
时间: 2009-4-8 03:44
先谢一下,
不过,没有用,
要显示出密码保护的RAR文件.
也就是被加密过的文件名,列表
作者: tireless
时间: 2009-4-8 04:26
看错了,我以为你只找 rar 文件。试试这个:
@echo off
(for /f "delims=" %%a in ('findstr /sbm "Rar!" *') do (
rar t -inul "%%a"<nul||echo %%a
))>加了密码的Rar文件.txt
作者: cad55
时间: 2009-4-8 04:33
还是没有用,
与第一个,一样
列出所有RAR的名称....
作者: tireless
时间: 2009-4-8 04:41
改成这样:
Quote: |
@echo off
(for /f "delims=" %%a in ('findstr /sbm "Rar!" "%cd%\*"') do (
rar t -inul "%%a"<nul||echo %%a
))>加了密码的Rar文件.txt |
|
作者: cad55
时间: 2009-4-8 04:54
还是没有用,
与第一个,一样
列出所有RAR的名称.... (绝对路径显示)
作者: tireless
时间: 2009-4-8 05:09
标题: Re 7楼
是否是要这样的结果:
加了密码的Rar文件.txt Quote: |
g:\我的文档\桌面\Y.rar
g:\我的文档\桌面\复件 yy.cndos
g:\我的文档\桌面\yy.rar
g:\我的文档\桌面\新建文件夹\复件 复件 yy.rar
g:\我的文档\桌面\新建文件夹\复件 yy.rar2 |
|
把其中的 rar 改成完整路径,如 "C:\Program Files\WinRAR\rar.exe"
作者: cad55
时间: 2009-4-8 05:18
Quote: |
Originally posted by tireless at 2009-4-8 05:09 AM:
是否是要这样的结果:
加了密码的Rar文件.txt
把其中的 rar 改成完整路径,如 "C:\Program Files\WinRAR\rar.exe" |
|
关于列表的显示方式,无所谓
关键是查找出,被加密过的RAR文件。
兄台所写的代码,是查找出所有的RAR文件,并出列表。。。。。
全部的需求如下:
全盘查找,真正的RAR文件,(不论是扩展名是RAR还是改写的其它扩展名的)
列出其中,被加密过的RAR文件名。
(与卡巴杀毒时,提示有“密码”保护的效果相同)
作者: tireless
时间: 2009-4-8 05:33
标题: Re 9楼
6 楼代码会把
没有加密码的 rar 文件也找出来?我测试的结果是只找出加了密码的...
作者: cad55
时间: 2009-4-8 05:37
Quote: |
Originally posted by tireless at 2009-4-8 05:33 AM:
6 楼代码会把没有加密码的 rar 文件也找出来?我测试的结果是只找出加了密码的... |
|
是所有的RAR列表
请兄台再测试一下。。。

作者: tireless
时间: 2009-4-8 05:47
那就奇怪了,
在
我这找出来的都是加了密码的,
你那却全找出来了...
[
Last edited by tireless on 2009-4-8 at 05:59 ]
作者: Hanyeguxing
时间: 2009-4-12 02:12
经过加密的rar文件的文件头和未加密的不一样:
加密的文件头是:52 61 72 21 1A 07 00 CE 99 73 80 00
没加的文件头是:52 61 72 21 1A 07 00 CF 90 73 00 00
作者: wuwei1dai
时间: 2009-4-12 07:32
怎么我加密了的文件头还是:52 61 72 21 1A 07 00 CF 90 73 00 00
作者: freeants001
时间: 2009-4-12 08:15
同上
52 61 72 21 1A 07 00 CF 90 73 00 00 0D 00 00 00
作者: freeants001
时间: 2009-4-12 08:40
这样可以
path=%path%;C:\Program Files\winrar
for /r %%i in (*.rar) do @rar t "%%~i"<nul>nul||echo %%~i>>rar加密文件.txt
作者: cad55
时间: 2009-4-12 22:10
Quote: |
Originally posted by freeants001 at 2009-4-12 08:40 AM:
这样可以
path=%path%;C:\Program Files\winrar
for /r %%i in (*.rar) do @rar t "%%~i"<nul>nul||echo %%~i>>rar加密文件.txt |
|
测试了一下:可以显示被加密过的RAR文件,列表。
谢谢了。。
但,被用户有意更改后的扩展名,的真正RAR文件,还是不能显示。。。
还请研究一下
作者: everest79
时间: 2009-4-12 22:49
扩展名换了不就行了
作者: cad55
时间: 2009-4-12 22:54
Quote: |
Originally posted by everest79 at 2009-4-12 10:49 PM:
扩展名换了不就行了 |
|
是呀,怎样才能像:杀毒软件一样,查找呀
作者: cad55
时间: 2009-4-12 22:55
Quote: |
Originally posted by cad55 at 2009-4-12 10:54 PM:
是呀,怎样才能像:杀毒软件一样,查找呀 |
|
查找文件头,应该是可以实现的。。。
作者: freeants001
时间: 2009-4-12 23:04
Quote: |
测试了一下:可以显示被加密过的RAR文件,列表。
谢谢了。。
但,被用户有意更改后的扩展名,的真正RAR文件,还是不能显示。。。
还请研究一下 |
|
结合以下2楼的代码不就解决了~~~
作者: cad55
时间: 2009-4-12 23:08
Quote: |
Originally posted by freeants001 at 2009-4-12 11:04 PM:
结合以下2楼的代码不就解决了~~~ |
|
结合过了,,,俺没有搞成功。。。。
作者: freeants001
时间: 2009-4-12 23:13
path=%path%;C:\Program Files\winrar
findstr /bm "Rar!" * > RarFiles.txt
for /f "delims=" %%i in (RarFiles.txt) do @rar t "%%~i"<nul>nul||echo %%~i>>rar加密文件.txt
作者: cad55
时间: 2009-4-12 23:41
Quote: |
Originally posted by freeants001 at 2009-4-12 11:13 PM:
[code]path=%path%;C:\Program Files\winrar
findstr /bm "Rar!" * > RarFiles.txt
for /f "delims=" %%i in (RarFiles.txt) do @rar t "%%~i"<nul>nul||echo %%~i> ... |
|
分检列表后,就对加密文件无法再判处断。。。为什么呀。。。
作者: hhasee
时间: 2009-4-12 23:43
顶一下!
作者: cad55
时间: 2009-4-13 00:05
Quote: |
Originally posted by cad55 at 2009-4-12 11:41 PM:
分检列表后,就对加密文件无法再判处断。。。为什么呀。。。 |
|
谢谢楼上诸位
这样就可以解决了:
findstr /bm "Rar!" * > RarFiles.txt
path=%path%;C:\Program Files\winrar
for /f "delims=" %%i in (RarFiles.txt) do @rar t "%%~i"<nul>nul||echo %%~i>>rar加密文件.txt


[
Last edited by cad55 on 2009-4-13 at 00:13 ]