Linux文件搜索命令find
命令find可以根据文件的不同属性在指定的范围内搜索文件,例如:
根据文件名进行查找,在目录/etc下搜索文件名为init( -iname 可以实现不区分大小写进行查找)的文件,实现精准查找,只查找文件名为init的文件:find /etc -name init
还可以使用通配符,进行模糊查找,其中,* 匹配任意长度的任意字符,?匹配任意的单个字符,例如:find /etc -name *init*
或者 find /etc -name init???
根据文件大小进行查找,在根目录( / )下查找大于50MB(其中 + 表示大于,- 表示小于,= 表示等于,单位是数据块,Linux存储文件的最小单位是数据块,1数据块=512Byte=0.5KB,100MB=102400KB=204800数据块)的文件:find / -size +102400
根据所有者 (或所属组)来查找文件,在根目录下查找所有者为xbb的文件:find / -user xbb
根据时间属性来查找,其中,最常用的有三类时间,-amin 表示访问时间,-mmin 表示文件内容被修改过的时间,-cmin 表示文件属性被修改过的时间,+ 表示超过多少时间,- 表示多少时间以内,例如:在/etc目录下查找文件内容在1000分钟内被修改过的文件:find /etc -cmin -1000
还可以查找文件大小处于一个区间内的文件,其中 -a 表示两个条件需要同时满足,-o 表示满足任意一个条件即可,在/etc目录下查找大于80MB小于100MB的文件:find /etc -size +163840 -a -size +204800
好像还没有这样的文件
根据文件类型查找( f 表示文件,d 表示目录,l 表示软链接),在/etc目录下查找文件名为init开头的任意文件:find /etc -name init* -a -type f
可以对查找到的文件或目录显示器详细信息,在/etc目录下查找所有以init开头的文件并显示其详细信息:find /etc -name init* -a -type f -exec ls -l {} \;
根据i节点进行查找,例如:find -inum 节点号