我有一个通过shell脚本main.ksh调用的配置单元ql job main.sql。脚本是通过一个cron作业安排的,该作业一天运行一次。我需要捕获mysql表中main.sql处理并插入到目标表中的记录数,以便进行审计。我们怎样才能做到这一点?
sycxhyv71#
您可以将输出重定向到某个文件,然后在该临时文件上插入类似“inserted”的grep字符串,然后使用其他grep命令获取整数下面是示例方法
1. Sh myscript.sh > tmp.txt 2. tmp.txt | grep "insert" | grep -Eo '[0-9] > finalcount.txt
nimxete22#
您可以使用hive和grep info提供的表属性,例如 numRows .
numRows
INSERTED_ROWS=$(echo $(hive -e "describe formatted sample_table partition(dt='$DATE_WRITTEN')") | grep -o 'numRows.*' | awk '{print $3}')
如果不使用分区插入新数据,可以使用
select COUNT(*) from table where='your_condition'
并解析值。
2条答案
按热度按时间sycxhyv71#
您可以将输出重定向到某个文件,然后在该临时文件上插入类似“inserted”的grep字符串,然后使用其他grep命令获取整数
下面是示例方法
nimxete22#
您可以使用hive和grep info提供的表属性,例如
numRows
.如果不使用分区插入新数据,可以使用
并解析值。