Linux-批量查找删除文件/目录
2019-01-12 本文已影响19人
飞天小小猫
批量删除指定目录下的文件
//删除当前目录下所有的 .log 结尾的文件
find . -name “*.log” -exec rm -rf {} \;
注:
1.{}和\之间有一个空格
2.find . -name 之间也有空格
3.exec 是一个后续的命令,{}内的内容代表前面查找出来的文件
//删除当前目录下 修改日期 在1天以前的文件
find . -mtime +1 -name “*” -exec rm -rf {} \;
//删除当前目录下 修改日期 在60分钟以前的文件
find . -mmin +60 -name “*” -exec rm -rf {} \;
文件内容查找
//查找当前目录下所有类型为file,文件后缀为class的文件
find . -type f -name *class
注:type参数 -f指文件 -d指目录
//查找当前目录所有文件内容包含abcd字符串的文件名
find ./ -type f -exec grep -il abcd {} \;
注:-i 值忽略关键字大小写; -l 只列出匹配的文件名
shell批量check删除目录
#!/bin/bash
for dir in $(ls $1)
do
if [ -d $1"/"${dir} ] ; then
rm -rf $1"/"${dir}
fi
done