清理linux 某个文件夹下面所有的log文件
#!/bin/sh #目标文件夹下面所有问题 target_dir="/app/" #删除2天前新建的后缀为log的文件 find /app/applog*/ -ctime +2 -name "*.log" -exec rm -rf {} \; #查找出文件夹下所有的log文件 list=`find $target_dir -name "*.log"` for file in $list do if test -f $file then #清理 cat /dev/null > $file ls -l $file fi done df
第二种,会有显示,好用点
#!/bin/sh #配置目标文件夹 target_dir="/app/" #find $target_dir -ctime +2 -name "*.log" -exec ls -l {} \; #直接删除 #find $target_dir -ctime +2 -name "*.log" -exec rm -rf {} \; # 先在目标目录下查找出最后修改时间为2天前的,并且后缀为.log的文件 再循环删除日志文件 list=`find $target_dir -mtime +2 -name "*.log"` for dele_file in $list do if test -f $dele_file then pwd_info=`ls -l $dele_file` rm -rf $dele_file echo "删除文件:"$pwd_info fi done #先查找出 目标目录下所有的后缀为.log 的文件,再循环清空日志 list=`find $target_dir -name "*.log"` for file in $list do if test -f $file then cat /dev/null > $file pwd_info=`ls -l $file` echo "清空文件:"$pwd_info fi done
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步