if语句中的diff whist输出?

时间:2016-01-13 17:13:33

标签: bash if-statement diff

我正在使用diff操作来检查几个文件,但我想知道我是否可以同时使用它来触发事件(例如echo - 一条线到终端等)必须“手动”检查输出报告是否存在。

我曾考虑将报告创建用作触发器,但据我所知,无论如何都会创建文件,如果没有差异,它只会是空的?

基本上,是否可以让diff输出一个文件,同时在if语句中,以保持我的bash配置文件和脚本本身尽可能整洁?

(如果有帮助,这是我在此问题中收到的精彩帮助的后续问题:Notifications on next ssh login

e.g。这个效果是什么?:

if [ diff filex filey > report.txt == true ]
   # So the report.txt is created but the 'state' of
   # the diff query is preserved and evaluated...
     then echo "Files are different"
     else
         break
fi

希望这是有道理的。

这是在Ubuntu bash FYI。

1 个答案:

答案 0 :(得分:1)

是的,如果没有差异,那么DateTime将退出,状态为0(" true""),所以你可以这样做:

diff

即使您重定向输出,这也应该有效。