#查询30天前log日志并删除;
find ./ -type f -name "*.log" -mtime +30|xargs rm -rf
#查询出所有的空文件夹
find ./ -type d -empty
#查询空文件夹并删除
find ./ -type d -empty -exec rm -rf {} \;
#linux下批量删除空文件(大小等于0的文件)的方法
find . -name "*" -type f -size 0c | xargs -n 1 rm -f
find . -name "*" -type f -size 1024c | xargs -n 1 rm -rf
就是删除1k大小的文件。(但注意不要用 -size 1k,这个得到的是占用空间1k,不是文件大小1k的)。
#删除脚本
[root@dev-server-04 scripts]# cat del_empty_dir.sh
# !/bin/bash
# 批量删除空文件目录
# 使用方法:(1)进入要操作的目录:cd 目录名;(2)运行脚本:bash del_empty_dir.sh
deleteempty()
{
find ${1:-.} -mindepth 1 -maxdepth 1 -type d | while read -r dir
do
if [[ -z "$(find "$dir" -mindepth 1 -type f)" ]] >/dev/null
then
echo "$dir"
rm -rf ${dir} 2>&- && echo "Empty, Deleted!" || echo "Delete error"
fi
if [ -d ${dir} ]
then
deleteempty "$dir"
fi
done
}
deleteempty
赞赏