在命令行上,用在兩個文件不同,命令檢查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