脚本监测 前十名磁盘空间用户的列表

脚本名称为: Big_Users.sh 

#!/bin/bash
#
#  Big_Users - find big disk space users in various directories
################################################################
#  Parameters for Script
#
CHECK_DIRECTORIES=" /var/log /home" #directories to check
#
################# main Script ############################
#
DATE=$(date '+%m%d%y')       #Date for report file
#
exec > disk_space_$DATE.rpt    #Make report file Std Output
#
echo > "Top Ten Disk Space Usage"   #report header for whole report
echo "for $CHECK_DIRECTORIES Directories"
#
for DIR_CHECK in $CHECK_DIRECTORIES    #loop do du directories
do 
  echo ""
  echo "The $DIR_CHECK Directory:"  #Title header for each directory
#
# Create a listing of top ten disk space users
  du -S $DIR_CHECK 2>/dev/null|
  sort -rn |
  sed '{11,$D;=}' |
  sed 'N; s/
/ /' |
  gawk '{printf $1 ":" "	" $2 "	" $3 "
"}'
#
done               #end of dor loop for du directories
#

监测的目录为:  /var/log /home 

利用

 sed '{11,$D;=}' |
 sed 'N; s/
/ /' |
 gawk '{printf $1 ":" "	" $2 "	" $3 "
"}'

来选择前十个磁盘空间;排列的数字与十个空间列表并列;打印出结果

最后的结果会存进 disk_space_$DATE.rpt 的文件

最后在利用cron,在每周一早晨7:15执行该脚本文件

15 7 * * 1 /home/user/Big_Users.sh

cron为Linux系统下设置定时任务

详见 -> 戳我

原文地址:https://www.cnblogs.com/jacson/p/4803500.html