Shell指令碼實現硬碟空間和資料表空間的使用方式統計並郵件通知_linux shell

來源:互聯網
上載者:User

複製代碼 代碼如下:

#/bin/bash
#該指令碼用於統計硬碟空間和資料表空間的使用方式,並郵件發出
#初始化環境變數
source /home/oracle/.bash_profile
#獲得本機ip
ip=`/sbin/ifconfig eth0 | grep Bcast | cut -d : -f 2 | cut -d " " -f 1`
#切換到本指令碼目錄
cd /home/oracle/shell/
#刪除之前該指令碼產生的記錄檔
rm -rf $ip.txt
#統計硬碟空間
echo -e "您好!
    $ip統計資訊如下:\n\n" >> $ip.txt
echo "硬碟空間統計:" >> $ip.txt
/bin/df -Th >> $ip.txt
#統計資料表空間
echo -e "\n\n\n資料表空間統計:" >> $ip.txt
sqlplus -s scott/tiger << EOF >> $ip.txt
set feed off
set lines 400
set pages 900
col 資料表空間名 for a20
select x.tablespace_name 資料表空間名,已用,已指派,已用占已指派的比例,閒置已指派空間,最大可用空間,已指派占最大可用比例,可自動擴充的空間
  from (select TABLESPACE_NAME,round(sum(BYTES) / 1024 / 1024 / 1024, 9) 已指派,
               round(sum(MAXBYTES - BYTES) / 1024 / 1024 / 1024,2) 可自動擴充的空間,
               round(sum(MAXBYTES) / 1024 / 1024 / 1024) 最大可用空間,
               to_char(round(sum(BYTES) / sum(MAXBYTES) * 100, 2), '990.99') || '%' 已指派占最大可用比例
          from dba_data_files
         group by TABLESPACE_NAME) x,
       (select a.tablespace_name,
               round(a.bytes / 1024 / 1024 / 1024, 9) 已用,
               round(b.bytes / 1024 / 1024 / 1024, 9) 閒置已指派空間,
               to_char(round(a.bytes / (a.bytes + b.bytes) * 100, 2),
                       '990.99') || '%' 已用占已指派的比例
          from sys.sm\$ts_used a, sys.sm\$ts_free b
         where a.tablespace_name = b.tablespace_name) y
 where x.tablespace_name = y.tablespace_name
 order by 1;
exit
EOF
#把統計結果郵件發出
mutt -s "$ip統計資訊" -- zhangwz@xx.net < $ip.txt

 
加到作業系統的定時任務中:

每周五的15:30執行此指令碼

複製代碼 代碼如下:

[oracle@ ~]$ crontab -l
30 15 * * 5  /home/oracle/shell/weekcheck.sh

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.