首页 > 代码库 > 嵌入式linux下自动定时检测硬盘空间并删除旧文件脚本

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

[plain] view plaincopyprint?在CODE上查看代码片派生到我的代码片
  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脚本中几种控制语句的写法 :

[plain] view plaincopyprint?在CODE上查看代码片派生到我的代码片
  1. while true; 
  2. do 
  3.  
  4. ... 
  5.  
  6. done 
[plain] view plaincopyprint?在CODE上查看代码片派生到我的代码片
  1. for ... in ... 
  2. do 
  3. ... 
  4. done 
[plain] view plaincopyprint?在CODE上查看代码片派生到我的代码片
  1. if  
  2. then 
  3. fi 


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

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