Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/22.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Linux 递归生成md5校验和,并将其打印到具有md5、路径和文件大小的文本文件中_Linux_Bash_Shell_Sh - Fatal编程技术网

Linux 递归生成md5校验和,并将其打印到具有md5、路径和文件大小的文本文件中

Linux 递归生成md5校验和,并将其打印到具有md5、路径和文件大小的文本文件中,linux,bash,shell,sh,Linux,Bash,Shell,Sh,我正在学习bashshell脚本,我已经给了一个任务,递归地获取子目录中的文件,并执行md5校验和,显示文件大小,然后逐行输出为文本文件 比如说 662c1e24227048e50ae8e9c62b8a60da yolo/happy/README.txt 20kb c2b1cd01a4595c134bca9502f35107de苹果/mango/bat/ball/apt.txt 30kb 对于递归,我使用 find/home/kat/sam-type f-print0 | xargs-0 m

我正在学习bashshell脚本,我已经给了一个任务,递归地获取子目录中的文件,并执行md5校验和,显示文件大小,然后逐行输出为文本文件

比如说

  • 662c1e24227048e50ae8e9c62b8a60da yolo/happy/README.txt 20kb
  • c2b1cd01a4595c134bca9502f35107de苹果/mango/bat/ball/apt.txt 30kb
对于递归,我使用

find/home/kat/sam-type f-print0 | xargs-0 md5sum>/home/kat/tempmd5new.txt

======= 这给了我输出
662c1e24227048e50ae8e9c62b8a60da yolo/happy/README.txt
c2b1cd01a4595c134bca9502f35107de apple/mango/bat/ball/apt.txt

主要问题是我必须使用find命令。

提前感谢。

这将与
wc-c
一起执行
md5sum
,它获取字节数,将结果保存到变量中,并将其连接到每个文件的单个回显打印中:

find your/path -type f -exec bash -c 'md=$(md5sum "$0"); siz=$(wc -c <"$0"); echo ${md} ${siz}b' {} \;

查找您的/path-type f-execbash-c'md=$(md5sum“$0”);siz=$(wc-c嗨,你目前的状态是什么?哪些有效,哪些无效?