linux-find命令





文件搜索命令:

    

find  filepath -name filename  : 根据文件名进行查找



# 查找文件名为 init 的文件

[root@wangtianbao1 tmp]# find /etc/ -name init

/etc/init

/etc/sysconfig/init



#查找文件名中 包含 init 的文件

[root@wangtianbao1 tmp]# find /etc/ -name *init*

/etc/inittab

/etc/init.d

/etc/init



# -iname 表示不区分大小写

[root@wangtianbao1 tmp]# find /etc/ -iname init

/etc/INIT

/etc/init

/etc/sysconfig/init



find filepath -size  +/- (+表示大于 -表示小于 不写表示等于) size  ; 根据文件大小进行查找; 这个size的单位是数据块。1数据库=512字节



#查找大于100M的文件   1024*100/512  

[root@wangtianbao1 tmp]# find / -size +204800 



find filepath -user/-group username : 查找文件属于指定用户(组)的文件



#查找用户属于 lingzhiling的文件

[root@wangtianbao1 tmp]# find / -user lingzhiling

/home/lingzhiling

/home/lingzhiling/.bash_profile

/home/lingzhiling/.bash_logout

/home/lingzhiling/.bashrc    



#根据时间属性进行查找

find filepath -cimin(文件属性)/-amin(访问时间)/-mmin(问价内容) +/-N 



#查找10分钟内被访问过的文件

[root@wangtianbao1 tmp]# find /etc -amin -10





#复杂查询 

-a 表示 and ; -o 表示 or 



# 大于 800*5/1024m  并且小于 263840*5/1024的文件

[root@wangtianbao1 tmp]# find /etc/ -size +800  -a -size  -263840



# -type f(文件)/d(目录)/l(软件连接)

#查找etc文件init开头并且类型为文件的

[root@wangtianbao1 tmp]# find /etc/ -name init* -a -type f

/etc/inittab

/etc/init/init-system-dbus.conf

/etc/sysconfig/init

/etc/sysconfig/network-scripts/init.ipv6-global

/etc/iscsi/initiatorname.iscsi

/etc/selinux/targeted/contexts/initrc_context





#对查找的结果通过  -exec/-ok 进行操作   ok 与 exec的区别是ok会进行询问。 

[root@wangtianbao1 tmp]# find /etc/ -name init* -a -type f -exec ls -l {} \;

-rw-r--r--. 1 root root 884 11月  4 20:17 /etc/inittab

-rw-r--r--. 1 root root 130 3月  12 2014 /etc/init/init-system-dbus.conf

-rw-r--r--. 1 root root 1154 11月  4 20:17 /etc/sysconfig/init



#-inum  对一些文件名比较怪的文件进行处理  例如 "test 1" ; 通过I节点找到硬链接 

[root@wangtianbao1 tmp]# find . -inum 407198

./test 1

#找到I节点为407198的文件并且进行删除

[root@wangtianbao1 tmp]# find . -inum 407198 -exec rm {} \;







        

 

你可能感兴趣的:(linux)