我試圖做一個簡單的,如果,但不知何故,它不工作。猛砸如果pass雖然它不應該
代碼:
if [ `cat /tmp/rcrt_unusable_indexes.log | grep -i "ORA-" | wc -l` > 0 ]
then
echo "ERROR at in /tmp/rcrt_unusable_indexes.log . EXIT script." >> ${LOG_PATH}
exit 1;
fi
測試:
bash-4.1$ cat /tmp/rcrt_unusable_indexes.log | grep -i "ORA-" | wc -l
0
bash-4.1$ if [ `cat /tmp/rcrt_unusable_indexes.log | grep -i "ORA-" | wc -l` > 0 ]
> then
> echo 1
> fi
1 <------- this is the result
這怎麼可能呢?
'grep'可以讀取文件;使用'grep -i「ORA-」/tmp/rcrt_unusable_indexes.log | wc -l';實際上,它也可以計數:'grep -i -c「ORA-」/ tmp/rcrt_unusable_indexes.log'。另外,不要忘記從當前目錄中刪除名爲'0'的文件。您調用'['創建該文件。你可以使用'[[...]]'並使用'>'代替''和'-gt'。 –