ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 把Linux硬盘的使用情况插入数据库表

把Linux硬盘的使用情况插入数据库表

原创 Linux操作系统 作者:jifei0611 时间:2009-03-05 21:30:58 0 删除 编辑

Linux硬盘的使用情况插入数据库表

这是我在学习shell编程是写的,目的:熟悉grep,sed,awk的使用,将硬盘使用信息转换为SQL

Linux硬盘使用情况可以df –h命令查看

:

[oracle@TEST ~]$ df -h

Filesystem            Size  Used Avail Use% Mounted on

/dev/cciss/c0d0p5      79G   15G   61G  20% /

/dev/cciss/c0d0p1      99M   13M   82M  13% /boot

none                  8.0G     0  8.0G   0% /dev/shm

/dev/cciss/c0d0p3      99G   89G  4.6G  96% /u02

/dev/cciss/c0d0p2     289G  2.0G  272G   1% /u03

/dev/cciss/c0d0p7     330G   29G  285G  10% /u09

通过下的shell scriptdf –h的结果进行处理

df -h | grep -v '^\' | grep -v '^\' | sed 's/%//g'

[oracle@TEST ~]$ df -h | grep -v '^\' | grep -v '^\' | sed 's/%//g'                                                                     

/dev/cciss/c0d0p5      79G   15G   61G  20 /

/dev/cciss/c0d0p1      99M   13M   82M  13 /boot

/dev/cciss/c0d0p3      99G   89G  4.6G  96 /u02

/dev/cciss/c0d0p2     289G  2.1G  272G   1 /u03

/dev/cciss/c0d0p7     330G   29G  285G  10 /u09

这条语句的含义是去掉df –h中的Filesystem,none,并将硬盘使用百分比的%去掉,可以用重定向符>将结果输出到一个文件中

df -h | grep -v '^\' | grep -v '^\' | sed 's/%//g' > diskinfo

将上面的信息转换为sql,并将sql保存到diskinfo.sql文件中

awk '{print "insert into diskinfo values ('\''"$1"'\'', '\''"$2"'\'', '\''"$3"'\'', '\''"$4"'\'', "$5", '\''"$6"'\'');"}' diskinfo > diskinfo.sql

在数据中创建表

SQL>  create table diskinfo

  2   (filesystem varchar2(50),

  3    totalsize  varchar2(20),

  4    used varchar2(20),

  5    avail varchar2(20),

  6    usepercent number,

  7    mounton varchar2(15)

  8   );

通过下的script把数据插入到diskinfo表中

insert.sh

#!/bin/sh

#inster data to table diskinfo #

sqlplus / as sysdba << EOF

@diskinfo.sql

exit;

EOF

 

 

 

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

请登录后发表评论 登录
全部评论

注册时间:2008-01-12

  • 博文量
    143
  • 访问量
    272587