day*_*aya 3 file-comparison bash-script
我想要一个 bash 脚本来比较或查找存储在不同位置的多个文件的差异:
下的文件 /tmp/test/
与/home/oldtest
/下的文件进行比较
文件/tmp/test/A.txt
仅与/home/oldtest/A.txt
(与其他文件类似 -B.txt
与 比较B.txt
)。
如果发现任何更改:状态应为“文件 A.txt 中需要修改”。
diff
来自 GNU diffutils 有一个递归比较的选项:
diff -qrs /dir/A /dir/B
Run Code Online (Sandbox Code Playgroud)
比较目录:-q
安静地(即不打印任何差异,它只报告文件不同),-r
递归(具有所有子目录的完整树),-s
报告相同的文件。
cd /tmp/test
for i in *.txt; do diff -q $i /home/oldtest/$i; done
Run Code Online (Sandbox Code Playgroud)
对于每个有差异的文件,输出将为“文件 A.txt 和 ../home/oldtest/A.txt 不同”。