在命令行上,用在两个文件不同,命令检查DIFF退出状态在脚本
echo $?
报告回差异后“1”。当我尝试在脚本中相同,具体如下:
echo "` diff $F1 $F2`"
rv=$?
if [[ $rv == 1 ]]
then
echo "failed"
fi
然后我从来不打印“失败”(即使是不同的文件)。请注意,这是bash shell的,所以语法应该罚款(例如,如果我检查“0”代替,它总是打印)。
我如何检查是否diff命令上发现差异和工艺条件?
这是Ubuntu的12.04下方。
使用'cmp',而不是'diff'如果你只关心数量在返回代码。 – RedX
和'回声$(DIFF)'返回从'echo'退出代码,而不是从'diff'。 – RedX
@RedX:你的第二个评论回答了为什么它不起作用,谢谢。但我想首先打印差异,但也要记录多少次比较失败。你看到一个简单的方法来做到这一点? – gnometorule