gpt4 book ai didi

linux - 使用 grep invert 函数比较两个 md5 哈希列表

转载 作者:太空狗 更新时间:2023-10-29 12:18:05 25 4
gpt4 key购买 nike

我已经使用 losetup 在 Linux 中安装了两个 .dd 镜像,并为位于这些镜像上的每个文件创建了一个哈希值列表:

md5deep -r  -e * > winXPimage1.txt
md5deep -r -e * > winXPimage2.txt

这是两个哈希列表的样子:

d41d8cd98f00b204e9800998ecf8427e  /media/74444E0F444DD510/AUTOEXEC.BAT
17d7055859d99a0d606cfaf17ae38638 /media/74444E0F444DD510/boot.ini
d41d8cd98f00b204e9800998ecf8427e /media/74444E0F444DD510/CONFIG.SYS
88cf0ff92a4a9fa7bd9b7513b2e9e22b /media/74444E0F444DD510/Documents and Settings/…
Etc…

这两张图片包含windows XP安装文件和标准程序。然而,第二张图片也包含很多图片(jpg、png 等)。

我想使用 grep 比较我创建的两个哈希列表,并从第二个图像中过滤掉与 .jpg 文件相关的所有哈希。

我使用以下命令从第一张图片中删除了所有不必要的信息:

cut -f 1 -d ' ' winXPimage1.txt > winXPimage1New.txt

所以现在 image1 哈希列表如下所示:

d41d8cd98f00b204e9800998ecf8427e
17d7055859d99a0d606cfaf17ae38638
d41d8cd98f00b204e9800998ecf8427e
etc…

我正在尝试使用 grep invert 命令比较 winXPimage1New.txtwinXPimage2.txt(包含 jpeg 哈希值)并显示所有不匹配的 jpg 哈希行:

grep -v -f winXPimage1New.txt winXPimage2.txt/*.jpg
grep -v -f .*[.jpg] winXPimage1New.txt winXPimage2.txt

这些命令都不从第二个图像哈希列表返回 jpg 哈希值。我只是不确定我必须将 .jpg 文件扩展名放在哪里,因为我对 Linux 总体上还是个新手。

最佳答案

所以你想过滤 .jpg 文件?

你能不能先过滤哈希列表中的 .jpg 文件,例如

grep -E '\.[jJ][pP][eE]?[gG]$' winXPimage1.txt >only-jpeg1.txt
grep -E '\.[jJ][pP][eE]?[gG]$' winXPimage2.txt >only-jpeg2.txt

然后获取第一个系统上的 md5 列表:

cut -f 1 -d ' ' only-jpeg1.txt > only-jpeg1-md5only.txt

终于要尝试反向搜索了吗?

grep -v -f only-jpeg1-md5only.txt only-jpeg2.txt

更新:必须进行编辑,因为我的前两个示例行具有我绝对不想要的 -v 标志。被@Alex 发现了。

关于linux - 使用 grep invert 函数比较两个 md5 哈希列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19622501/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com