验证文件中记录总行数是否与数据库文件同名表记录总数是否一致

简介:

 #!/bin/sh

# csv文件目录
cd /u01/app/oracle/oradata/ext
# 获得扩展名为.csv的所有文件列表
ls -l *.csv|awk '{print $9}'| while read line
do
  # 输出扩展名为.csv的所有文件名追加到文件countstat.txt
  echo ${line} >> /root/countstat.txt
  # 输出扩展名为.csv的每个文件记录行数追加到文件countstat.txt
  cat ${line} | wc -l >> /root/countstat.txt
  # 获取删除扩展名.csv后的数据库中表名称
  TABLE=`echo ${line}|awk -F "." '{print $1}'`
  # 输出oracle表名称追加到文件countstat.txt
  echo $TABLE >> /root/countstat.txt
  # 查询oracle数据库中表记录总数追加到文件countstat.txt
  su - oracle -c "sqlplus /nolog <<EOF
  conn test/test
  select count(*) from $TABLE;
  exit;
  EOF
  ">> /root/countstat.txt
done
# 过滤文件内容,删除不需要的行内容
sed '/^SQL/d' /root/countstatbak.txt |sed '/^$/d'|sed '/^Copyright/d'|sed '/^With/d'|sed '/^-/d'|sed '-e /COUNT/d'|sed 's/^[[:space:]]*//g'> /root/result.txt
:<<COMMENT 
/^SQL/d 删除所有SQL开头的行
/^$/d 删除文件中的所有空行
-e /COUNT/d 删除包含COUNT字符的所有行,无论匹配字符在行首、行中或者行尾什么地方
s/^[[:space:]]*//g 删除行首空格
COMMENT


本文转自 pgmia 51CTO博客,原文链接:http://blog.51cto.com/heyiyi/1170001
相关文章
|
23天前
|
监控 关系型数据库 数据库
OceanBase数据库常见问题之文件存在但是数据库提示文件不存在如何解决
OceanBase 是一款由阿里巴巴集团研发的企业级分布式关系型数据库,它具有高可用、高性能、可水平扩展等特点。以下是OceanBase 数据库使用过程中可能遇到的一些常见问题及其解答的汇总,以帮助用户更好地理解和使用这款数据库产品。
|
1月前
|
存储 关系型数据库 MySQL
如何处理爬取到的数据,例如存储到数据库或文件中?
【2月更文挑战第23天】【2月更文挑战第73篇】如何处理爬取到的数据,例如存储到数据库或文件中?
|
29天前
|
SQL Java 数据库连接
从来没想到我们会扒拉nohup文件去找我们想要的数据,然后往数据库中添加。。。...
从来没想到我们会扒拉nohup文件去找我们想要的数据,然后往数据库中添加。。。...
17 0
|
1月前
|
SQL 关系型数据库 MySQL
【MySQL】— —熟练掌握用SQL语句实现数据库和基本表的创建。熟练掌握MySQL的安装、客户端登录方法;熟练掌握MySQL的编码、数据类型等基础知识;掌握实体完整性的定义和维护方法、掌握参照完整性
【MySQL】— —熟练掌握用SQL语句实现数据库和基本表的创建。熟练掌握MySQL的安装、客户端登录方法;熟练掌握MySQL的编码、数据类型等基础知识;掌握实体完整性的定义和维护方法、掌握参照完整性
99 1
|
3月前
|
SQL 关系型数据库 MySQL
MySQL | 数据库的管理和操作【表的增删改查】(一)
MySQL | 数据库的管理和操作【表的增删改查】
|
3月前
|
SQL 关系型数据库 MySQL
MySQL | 数据库的管理和操作【表的增删改查】(二)
MySQL | 数据库的管理和操作【表的增删改查】(二)
|
29天前
|
SQL Java 数据库连接
springboot解析txt文件顺便加到数据库中(nohup文件)
springboot解析txt文件顺便加到数据库中(nohup文件)
108 1
|
1月前
|
SQL 关系型数据库 MySQL
【MySQL】——用SQL语句实现数据库和基本表的创建
【MySQL】——用SQL语句实现数据库和基本表的创建
62 3
【MySQL】——用SQL语句实现数据库和基本表的创建
|
2月前
|
XML Java 数据库连接
|
2月前
|
关系型数据库 MySQL 数据库
MySQL员工打卡日志表——数据库练习
MySQL员工打卡日志表——数据库练习
136 0