博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
使用shell脚本巧妙统计文件
阅读量:2446 次
发布时间:2019-05-10

本文共 1800 字,大约阅读时间需要 6 分钟。

在数据迁移的过程中,会产生大量的dump文件,需要对dump的文件情况进行一个简单清晰的管理,比如目录下的文件特别多,而且某些表比较大,对应的dump文件比较多,就想得到一个很简洁的报告,能够统计出来每个表有多少个dump文件。

比如有1000个dump文件,都是基于 表TEST1,TEST2,TEST3,TEST4的。那么就想得到一个简单的统计报告,类似下面的形式

TEST1 100

TEST2 450

TEST3 300

TEST4 150

 

简单模拟一下这个问题。

使用如下的脚本a.sh来生成DUMP文件吧。

for i in {1..$2}

do
touch $1_EXT_$i.dmp
done

 

生成这1000个dump文件。

[ora11g@rac1 DUMP]$ ksh a.sh TEST1 100

[ora11g@rac1 DUMP]$ ksh a.sh TEST2 450
[ora11g@rac1 DUMP]$ ksh a.sh TEST3 300
[ora11g@rac1 DUMP]$ ksh a.sh TEST4 150

[ora11g@rac1 DUMP]$ ll *.dmp|wc -l

1000

简单看一下生成的dump的情况。

[ora11g@rac1 DUMP]$ ll *.dmp|tail -10
-rw-r--r-- 1 ora11g dba 0 Aug  7 08:13 TEST4_EXT_91.dmp
-rw-r--r-- 1 ora11g dba 0 Aug  7 08:13 TEST4_EXT_92.dmp
-rw-r--r-- 1 ora11g dba 0 Aug  7 08:13 TEST4_EXT_93.dmp
-rw-r--r-- 1 ora11g dba 0 Aug  7 08:13 TEST4_EXT_94.dmp
-rw-r--r-- 1 ora11g dba 0 Aug  7 08:13 TEST4_EXT_95.dmp
-rw-r--r-- 1 ora11g dba 0 Aug  7 08:13 TEST4_EXT_96.dmp
-rw-r--r-- 1 ora11g dba 0 Aug  7 08:13 TEST4_EXT_97.dmp
-rw-r--r-- 1 ora11g dba 0 Aug  7 08:13 TEST4_EXT_98.dmp
-rw-r--r-- 1 ora11g dba 0 Aug  7 08:13 TEST4_EXT_99.dmp
-rw-r--r-- 1 ora11g dba 0 Aug  7 08:13 TEST4_EXT_9.dmp
[ora11g@rac1 DUMP]$

 

首先需要得到的是在这个目录下有几个相关的表。

比如像目前的情况,就需要得到当前目录下有

TEST1

TEST2

TEST3

TEST4

可以使用如下的命令来统计得到。

[ora11g@rac1 DUMP]$  ls -lrt *.dmp|awk '{print $9}'|awk -F_EXT '{print $1}'|uniq

TEST1
TEST2
TEST3
TEST4

 

然后更近一步,怎么得到每个表对应多少个dump文件呢。

可以使用如下的脚本b.sh来快速得到

ls -lrt *.dmp|awk '{print $9}'|awk -F_EXT '{print $1}'|uniq|xargs -i echo "echo {} \`ls -lrt {}_EXT_[0-9]*.dmp|wc -l \`>> tablst" >test.sh

ksh test.sh
rm test.sh

[ora11g@rac1 DUMP]$ ksh b.sh

[ora11g@rac1 DUMP]$ cat tablst
TEST1 100
TEST2 450
TEST3 300
TEST4 150

这样文件的统计工作就很清晰明了了。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/23718752/viewspace-1247548/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/23718752/viewspace-1247548/

你可能感兴趣的文章
Plover.io在本地设备之间快速共享文件
查看>>
如何在OS X照片中禁用iCloud照片同步
查看>>
Minecraft的官方网站分发了受恶意软件感染的皮肤
查看>>
word模板快速填内容_如何快速轻松地在Word中选择内容块
查看>>
如何在Word 2013中直接从一个表导航到另一个表
查看>>
twitch 录像_如何通过NVIDIA GeForce Experience将您的PC游戏玩法传送到Twitch
查看>>
打印机疑难解答_使用内置电源疑难解答改善Windows 7中的电池寿命
查看>>
drupal加密_立即更新您的Drupal网站,否则黑客可能将其变成加密货币矿工
查看>>
vimrc配置 鼠标光标_在“提示”框中:即时调整窗口大小,包含鼠标光标并了解电池配置...
查看>>
询问HTG:安装XBMC附加组件,缩小视频以进行移动播放,自动更改默认打印机
查看>>
High Sierra推出后如何离开macOS公开Beta
查看>>
如何格式化您的WhatsApp消息
查看>>
pixel2pixel_Pixel 2的视觉核心是什么?
查看>>
更改用户账户设置自动更改_您应该更改的5个SimpliSafe设置
查看>>
excel中转换为数值_如何在Microsoft Excel中转换货币
查看>>
netflix怎么上_如何在Netflix上隐藏电视节目和电影
查看>>
opera_从Opera快速拨号页上删除混乱
查看>>
apple pencil_如何在iPad Pro的Apple Pencil上双击动作
查看>>
linux使用命令重命名_如何在Linux上使用重命名命令
查看>>
xcloud下载_Project xCloud是Microsoft在流Xbox游戏上的赌博
查看>>