linux命令-find

find 查找命令

参考网页:http://man.linuxde.net/find

find  .     #列出当前目录及子目录下所有的文件和文件夹

find /home -name "*.txt"   #在/home 目录下查找以.txt结尾的文件名

find /home -iname "*.txt" #在/home 目录下查找以.txt结尾的文件名-忽略大小写

find . \( -name "*.txt" -o -name "*.pdf" \) 或 find . -name "*.txt" -o -name "*.pdf"  #当前目录及子目录下查找所有以.txt 和.pdf结尾的文件----注意,第一个的(与-  之间有空格。这个是语法问题,没有空格就不对了

linux命令-find_第1张图片

find . \( -name "*help.txt" -o -name "*ed.pdf" \)

find /usr/ -path "*local*"   #匹配文件路径或者文件

find /home ! -name "*.txt" #找出/home 目录下不是以.txt结尾的文件

find . -type 类型参数   #f 普通文件、l符号连接 、d 目录 、c 字符设备 、b 块设备、s套接字、p Fifo

find . -maxdepth 3 -type f # 向下最大深度限制为3

find . -mindepth 2 -type f #搜索出深度距离当前目录至少2个子目录的所有文件

find . -type f  时间戳  #根据文件时间戳进行搜索

访问时间(-atime/天,-amin/分钟):用户最近一次访问时间

修改时间(-mtime/天,-mmin/分钟):文件最后一次修改时间

变化时间(-ctime/天,-cmin/分钟):文件数据元(例如权限等)最后一次修改时间

find . -type f -atime -7  #搜索最近七天内被访问过的所有文件

find . -type f -atime 7  #搜索恰好在七天前被访问的所有文件

find . -type f -atime +7  #搜索超过七天内被访问过的所有文件

find . -type f -amin +10  # 搜索访问时间超过10分钟的所有文件

find . -type f -newer file.log #找出比file.log修改时间更长的所有文

find . -type f -user root -exec chown tom {} \; #找出当前目录下所有的root的文件,并把所有权更改为用户tom


根据文件大小进行匹配

find . -type f -size 文件大小单元

b --块(512字节)

c--字节

w--字(2字节)

k--千字节

M--兆字节

G--吉字节

find . -type f -size +10k  #搜索大于10KB的文件

find . -type f -size -10k #搜索小于10KB的文件

find . -type f -size 10k #搜索等于10KB的文件


find . -type f -name "*.txt" -delete #删除当前目录下所有.txt文件

find . -type f -name "pm.py" -delete 


根据文件权限/所有权进行匹配

find  . -type f -perm 777 #当前目录下搜索出权限为777的文件

find . -type f -name "*.php" ! -perm 644  #找出当前目录下权限不是644的php文件

find . -type f -name "*.html" ! -perm 644

find . -type f -user tom   #找出当前目录用户tom拥有的所有文件 

find . -type f -group sunk    # 找出当前目录用户组sunk拥有的所有文件



上面这些命令都有点太高大上,写个平常用的:

比如找jenkins.war

find . -name "jenkins.war"

你可能感兴趣的:(linux命令-find)