我们在实战(二)已经学习了一些监控脚本的实例。
linux实战(二)----shell脚本监控实例-----日志截取三个命令在性能监控等运用中的实例解析
但是我们的结果都是直接输出在控制台的。
而在实际运用中 常常需要把结果输到文件中,以便日后查看。
我们在linux基础(十二)中也学习过怎么把数据存入文件。
linux基础(十二)----linux编程基础----与用户交互
现在需要做的就是把监控脚本和写入文件 结合起来。
下面选取其中一个例子来讲解 把 结果 输入到文件中的用法。
我们在实战(三)已经学习了 怎样运行 sh脚本文件。
linux实战(三)----执行shell脚本----详细步骤讲解
现在就在实战三checkSpace.sh脚本文件的基础上进行修改实现写入文件的目的。
原checkSpace.sh如下:
#!/bin/bash function GetDiskSpc { if [ $# -ne 1 ] then return 1 fi Folder="$1$" DiskSpace=`df -k |grep $Folder |awk '{print $5}' |awk -F% '{print $1}'` echo $DiskSpace } function CheckDiskSpc { DiskSpace=`GetDiskSpc $1` echo "The system $Folder disk space is $DiskSpace%" if [ $DiskSpace -gt 90 ] then { echo "The usage of system disk($Folder) is larger than 90%" } else { echo "The usage of system disk($Folder) is normal" } fi } CheckDiskSpc /boot
我们在基础(十二)中知道>号是覆盖写入, >>号是追加写入。
那么我们在这里 只需要echo的地方 加上一句 >>即可 把结果写入文件中。
修改后的 代码如下(实现了运行时即在页面上显示也写入文件space.txt):
#!/bin/bash function GetDiskSpc { if [ $# -ne 1 ] then return 1 fi Folder="$1$" DiskSpace=`df -k |grep $Folder |awk '{print $5}' |awk -F% '{print $1}'` echo $DiskSpace } function CheckDiskSpc { DiskSpace=`GetDiskSpc $1` echo "The system $Folder disk space is $DiskSpace%" echo "The system $Folder disk space is $DiskSpace%" >> space.txt if [ $DiskSpace -gt 90 ] then { echo "The usage of system disk($Folder) is larger than 90%" echo "The usage of system disk($Folder) is larger than 90%" >> space.txt } else { echo "The usage of system disk($Folder) is normal" echo "The usage of system disk($Folder) is normal" >> space.txt } fi } CheckDiskSpc /boot
运行脚本后发现结果文件已经生成。