试图弄清楚但找不到太多帮助。我想捕获表的计数,并在计数大于 0 时发送电子邮件。仅当计数超过 0 时,电子邮件中的输出才应如下所示。请帮助,预先感谢您帮助我出去。
spool log;
SELECT count(*)
FROM users
;
spool off
EOF
count=`grep -rn log | wc -l`
if [ $count != "1" ]
then
cat log | mailx -r [email protected] " ${MAILTO} > /dev/null 2>&1
else
echo "No Sessions found"
fi
输出:
Count(*)
--------
2
答案1
为了简化工作,您可以替换:
count=`grep -rn log | wc -l`
if [ $count != "1" ]
和
count=`tail -1 log`
if ["$count" -gt 0 ]
将sql
只返回一个值(这是命令的想法count(*)
),所以不需要 of wc -l
,只需抓住最后一行。并-eq
在比较数字时使用bash