## find的命令 精准查找
find [path] [expression]
path : 路径
expression :
-type<文件类型> : 只需找符合指定的文件类型 f文件
-mtime -n +n #按文件更改时间来查找文件,-n指n天以内,+n指n天以前
-atime -n +n #按文件访问时间来查找文件,-n指n天以内,+n指n天以前
1、目录查找文件
find ./ -name name.log
2、查找当前目录下所有文件中包含1111的内容
find ./ -type f -name '*' | xargs grep "1111"
3、查找以log为结尾
find ./ -name '*.log'
4、统计48小时之内未修改过的文件。
find ./ -type f -mtime +1 | wc -l
5、统计48小时之前未修改过并<10M(小文件)
find ./ -type f -mtime +1 -size -10M | wc -l
6、统计所有文件的总大小
find /var/log/ -type f -mtime +1 | xargs du --time | sort -h | awk -F " " '{sum+=$1}END{print sum/1024/1024 "G"}'
## locate 模糊查找
1、查找包含log的文件
locate log
2、查找etc下sh开头的文件
locate /etc/sh
## du 统计指定目录的磁盘空间
du [expression] [path]
expression:
-s : 只包含当前目录,不包含子目录
-h : 换算单位
-a : 显示所有文件和目录
## sort 排序
sort [expression] [path]
expression:
-h 按照文件大小排序
统计所有文件的总大小
find /var/log/ -type f -mtime +1 | xargs du --time | sort -h | awk -F " " '{sum+=$1}END{print sum/1024/1024 "G"}'
## log文件夹
find /var/log/ -type f -mtime +1 | xargs du --time | sort -h | awk -F " " '{sum+=$1}END{print sum/1024/1024 "G"}'
## tmp文件夹
find /tmp/ -type f -mtime +1 | xargs du --time | sort -h | awk -F " " '{sum+=$1}END{print sum/1024/1024 "G"}'