问候,
我想知道是否有办法抑制 diff 命令的所有输出 这样它就不会输出差异而只返回成功状态?
diff $FILE1 $FILE2
if [ $? -ne 0 ];then
echo Does not match output.
else
echo Match.
如果您只想知道两个文件是否不同,
cmp
是更好的工具。
if cmp -s file1 file2; then
echo Files not changed.
fi
diff $FILE1 $FILE2 &>/dev/null
我想要 diff 的递归功能并选择:
if [[ "$(diff -rq DIR1 DIR2 | head -n1)" ]]; then
echo "Directory Contents Differ"
else
echo "Directory Contents Same"
fi
因为 head 将在差异输出的第一行之后挂起 diff,这应该会导致 diff 提前停止(无需测试其他任何内容)。