无法通过电子邮件读取和发送表计数的输出

无法通过电子邮件读取和发送表计数的输出

试图弄清楚但找不到太多帮助。我想捕获表的计数,并在计数大于 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

相关内容