嵌入式linux下自动定时检测硬盘空间并删除旧文件脚本

  1. #! /bin/sh 
  2. while true;
  3. do 
  4. i=`df -h | egrep ‘/mnt/yourpath‘| awk ‘{print $5}‘ | cut -d "%" -f1 -` 
  5. if [ "$i" -ge 90 ] 
  6. then 
  7. echo "disk nearly full" 
  8. cd /mnt/yourpath  
  9. for file1day in `ls -d */ | sort -n | cut -d "/" -f1 -` 
  10. do 
  11.  
  12. done 
  13. #for filedel in `ls -d */ | sort -n | cut -d "/" -f1 -` 
  14. for filedel in `ls | sort -n -` 
  15. do 
  16. rm -f $filedel 
  17. ii=`df -h | egrep ‘/mnt/yourpath‘| awk ‘{print $5}‘ | cut -d "%" -f1 -`
  18. if [ "$ii" -lt 90 ] 
  19. then 
  20. break 
  21. fi 
  22. done 
  23. else 
  24. echo "disk space normal" 
  25. fi 
  26. sleep 120 
  27. done 


注:/mnt/yourpath为待检测设备挂载目录,录像文件或日志文件等等

1、#! /bin/sh 是指此脚本使用/bin/sh来解释执行;

2、shell脚本中几种控制语句的写法 :

  1. while true; 
  2. do 
  3.  
  4. ... 
  5.  
  6. done 
  1. for ... in ... 
  2. do 
  3. ... 
  4. done 
  1. if  
  2. then 
  3. fi 


其他的关键字和系统命令字面意思即可理解

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。