我想用外部硬盘目录的每个文件的文件路径制作一个txt文件,包括其头和尾的md5总和以及所有内容,并在一行中用分号隔开。
例如:
harddisc1/folder1/folder2/folder3/file.bla ; haedf0849wrzh2ewn ; 9823ueqizhrwdiuqh
harddisc1/folder1/folder5/anotherfile.blu ; 208349eoirjds ; 98w4IUOEHRAJFD
以此类推。
我有一些适用于路径和头部的东西。但是我无法在同一行中打印尾巴。你能帮我吗?
我在macOS 10.13.5上使用MacBook Pro
代码:
find . -type f -exec bash -c "echo -n harddiscname; echo -n \"{};\"; head -c 10000 \"{}\" |
md5 echo "\;" tail -c 10000 \"{}\" |
md5" \; > /Users/Tobias/Desktop/discname.txt
答案 0 :(得分:1)
我的系统有md5sum
,其行为可能与md5
略有不同。例如,它尝试在哈希值之后打印文件名。在下面的示例中,我的示例将打印hashhashhash... -
。仅供参考
find . -type f -exec \
bash -c 'h=`head -c 10000 "{}" | md5sum`;\
t=`tail -c 10000 "{}" | md5sum`;\
echo "{} ; $h ; $t"' \;