Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.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
Bash 通过校验和查找目录中已修改的文件_Bash_Last Modified_Data Integrity - Fatal编程技术网

Bash 通过校验和查找目录中已修改的文件

Bash 通过校验和查找目录中已修改的文件,bash,last-modified,data-integrity,Bash,Last Modified,Data Integrity,我已经创建了两个文件,一个是文件夹中所有单个文件的校验和,另一个是经过一些修改(添加、删除和修改)后同一文件夹中所有文件的校验和。我需要找出在第二次运行checksum命令期间修改的文件 comm -23 firstfile secondfile | awk '{print $2}' |sort > added.txt comm -23 secondfile firstfile | awk '{print $2}' |sort > deleted.txt 我尝试过使用comm命令

我已经创建了两个文件,一个是文件夹中所有单个文件的校验和,另一个是经过一些修改(添加、删除和修改)后同一文件夹中所有文件的校验和。我需要找出在第二次运行checksum命令期间修改的文件

comm -23 firstfile secondfile | awk '{print $2}' |sort > added.txt
comm -23 secondfile firstfile | awk '{print $2}' |sort > deleted.txt
我尝试过使用comm命令

comm -23 firstfile secondfile | awk '{print $2}' |sort > added.txt
comm -23 secondfile firstfile | awk '{print $2}' |sort > deleted.txt
我试图找到一种方法,我可以找到已修改的文件

md5sum *.txt > sum1

md5sum *.txt > sum2

diff sum1 sum2
校验和不是监视更改的好方法,因为它们仅限于校验和差异

如果要对文件系统事件执行操作,可以使用inotify()


如果您只想观看事件,可以使用iwatch()来检测目录中的更改。另一种选择是由fakebook()开发的watchman

为什么不使用diff?请检查答案