我需要检查所有DROP TABLE
语句是否存在exists子句。
如果IF EXISTS
子句不存在,脚本应该打印它。以下是我的代码。它工作正常,但我必须检查所有情况。下面的场景仅适用于大写。
for f in $FILES
do
result=`grep "DROP \+TABLE" "$f" | grep -v "IF \+EXISTS"` # -v inverts the match
if [ ! -z $result ]
then
echo 'IF EXISTS clause not found ' $f ':' $result
fi
done
答案 0 :(得分:1)
您可以使用grep
的{{1}}选项:
-i
grep -i "DROP \+TABLE" "$f" | grep -iv "IF \+EXISTS"
,-i
忽略PATTERN和输入文件中的大小写区别。 (
--ignore-case
由POSIX指定。)