linux下遍历目录和文件,删除过期天数目录或文件shell脚本
2017-06-01 15:32
891 查看
#!/bin/bash function delete_file() { INTERVAL=$(($1*3600*24)) pathdir=$2/ #echo $INTERVAL #echo $pathdir now_timestamp=$(date -d "$(date +"%Y-%m-%d %T")" +%s) #echo $now_timestamp files=$(ls $pathdir) for file in $files; do #file_date=$(stat $pathdir$file | grep Modify | awk '{print $2,$3}'); file_date=$( stat $pathdir$file | tail -2|head -1 | awk '{print $1,$2}'| cut -c16- ) #echo $file_date file_timestamp=$(date -d "$file_date" +%s) #echo $file #echo $file_timestamp if [ $? -ne 0 ]; then file_path=$file echo "delete file 0 $pathdir$file_path" rm -rf $pathdir$file_path continue fi if [ $(($now_timestamp - $file_timestamp)) -gt $INTERVAL ] then file_path=$file echo "delete file 1 $pathdir$file_path" rm -rf $pathdir$file_path fi done return 0; } function getdir() { for element in `ls $2` do dir_or_file=$2"/"$element if [ -d $dir_or_file ] then echo $dir_or_file delete_file $1 $dir_or_file getdir $1 $dir_or_file else #delete_file $2 $dir_or_file echo "clear finished" fi done return 0; } root_dir="." function main() { getdir $1 $root_dir ret=$? echo "getdir run ret:$ret" } main $@
使用时shell输入参数删除当前目录7天前的目录或文件
./delest_images 7
相关文章推荐
- Linux下使用Shell脚本删除一个目录下的所有子目录和文件
- Linux监控系统磁盘使用比例,当使用率达到指定比例,删除指定目录下的所有文件的shell脚本
- Linux下如何遍历指定目录下的所有文件并删除指定天数之前创建的文件
- Linux下如何遍历指定目录下的所有文件并删除指定天数之前创建的文件
- Linux 下Shell脚本删除过期文件
- Shell脚本遍历目录并批量修改文件编码
- shell脚本-某目录文件大于n时删除前m个文件
- 一个监控LINUX目录和文件变化的Shell脚本分享
- Python删除指定目录下过期文件的2个脚本分享
- Linux删除指定目录文件脚本
- linux下定期删除过期文件的脚本
- shell脚本遍历目录文件
- Shell脚本遍历目录并批量修改文件编码
- shell脚本删除目录下的指定文件
- Linux_shell脚本_遍历文件夹下所有文件
- Linux_shell脚本_遍历文件夹下所有文件
- 使用RMAN和控制文件备份删除归档日志的SHELL脚本--RED HAT 5 LINUX 64
- shell脚本删除目录下的指定文件
- Python删除指定目录下过期文件的2个脚本分享
- Windows下记事本编辑的Shell脚本放到Linux下执行出错,格式问题(/bin/bash^M: bad interpreter: 没有那个文件或目录)