Post Jobs

Shell脚本实现硬盘空间和表空间的使用情况统计并邮件通知,19解压缩版教程详解

本文实例讲述了PHP排序算法之冒泡排序(Bubble
Sort)实现方法。分享给大家供大家参考,具体如下:

复制代码 代码如下:

记录了MySQL 5.7.19 winx64解压缩版安装教程,具体内容如下

基本思想:

#/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

系统环境:Win7 x64

冒泡排序是一种交换排序,它的基本思想是:两两比较相邻记录的关键字,如果反序则交换,直到没有反序的记录为止。

 
加到操作系统的定时任务中:

软件准备:mysql 5.7.19 winx64

最简单排序实现:

每周五的15:30执行此脚本

下载网址:

我们先来看看在没有学习各种排序方法前经常使用的排序方法(至少我是这样。。。。):

复制代码 代码如下:

配置安装流程

//这里使用了类型提示(type hint) array,不熟悉或者不习惯的同学大可去掉,不影响运算结果
function MySort(array &$arr){
  $length = count($arr);
  for($i = 0;$i < $length - 1;$i ++){
    for($j = $i + 1;$j < $length;$j ++){
      //将小的关键字放前面
      if($arr[$i] > $arr[$j]){
        $temp = $arr[$i];
        $arr[$i] = $arr[$j];
        $arr[$j] = $temp;
      }
    }
  }
}
$arr = array(9,1,5,8,3,7,4,6,2);
MySort($arr);
print_r($arr);

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

具体安装如下:

上面的这段代码严格意义上说,不算是标准的冒泡排序,因为它不满足“两两比较相邻记录”的冒泡排序思想,它仅仅是一个简单的交换排序。思路不过是:从第一个关键字开始,将每一位关键字与它后面的所有关键字相比较,交换得到其中的最小值。但这个算法是非常低效的。

您可能感兴趣的文章:

  • Shell脚本实现自动发送邮件的例子
  • Shell脚本监控服务器在线状态和邮件报警的方法
  • Powershell中调用邮件客户端发送邮件的例子
  • PowerShell小技巧之使用Hotmail账号发送邮件
  • 3个备份系统文件并邮件发送的Shell脚本分享
  • 当备份数据库不能用时.用邮件列表得到WEBSHELL!(图)
  • Shell脚本实现删除邮件队列
  • linux
    shell发送Email邮件的方法详解

1、把 mysql-5.7.19-winx64.zip 压缩文件解压到 C:\MySQL\ 目录下;

冒泡排序算法:

2、在 C:\MySQL\ 目录下新建 my.ini 配置文件;

它重复地走访过要排序的数列,一次比较两个元素,如果他们的顺序错误就把他们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。

3、用文本编辑器或其他编辑器打开 my.ini
文件,把以下代码复制粘贴进去,保存退出;

发表评论

电子邮件地址不会被公开。 必填项已用*标注

相关文章

网站地图xml地图