码迷,mamicode.com
首页 > 系统相关 > 详细

linux系统使用之find命令常用用法集锦

时间:2017-12-20 16:51:39      阅读:176      评论:0      收藏:0      [点我收藏+]

标签:find命令   linux系统   

find命令用来在指定目录下查找文件。如果使用该命令时,不设置任何参数,则find命令将在当前目录下查找子目录与文件。并且将查找到的子目录和文件全部进行显示。


find 命令路径: /bin/find

功能描述:文件搜索

find [目录] [条件] [动作]

[目录]

不输入代表当前目录

例:

find     显示当前目录的所有文件

find  /boot     显示boot目录的所有文件


[条件] 

(1)用户和组:-user -group

例:查找home目录下所有的属于指定的文件

find /home/ -user abc  

技术分享图片

(2)根据文件类型来查找:(一般查找文件或者目录)

类型:-type ( f 文件,d 目录,l 连接,p 管道,c 字符文件,b 块文件,s  socket文件 )

find /home/ -type f

find /home/ -type d

技术分享图片

(3)文件名:-name

例:查找名字包含2017的文件

find /home/ -name *2017*

技术分享图片

(4)大小:-size   + 大于    - 小于

例:找到boot目录下大于5M文件

find /boot/ -size +5M

技术分享图片

(5)时间: -mtime  -atime  -ctime     

ctime:“属性改变时间(change time)”

mtime:“内容修改时间(modification time)”

Atime:“文件访问时间(access time)”

+N:N天之前    -N:N天之内


例:查找出root目录2天之前修改过的文件

find /root/  -mtime  +2

       查找root目录下3天之内修改过的文件

find /root/  -mtime  -3

同理 ctime 和atime 一样的用法

(6)权限:-perm

例:查找等于0775权限的文件或目录

find /boot/ -perm 755

       至少有777权限的文件或目录

find /tmp/ -perm -777

(7)查找的目录深度:

例:只查找目录第二层的文件和目录

find /boot/  -maxdepth 2

(8)多条件:

参数:

-a:与-and

-o:或-or

!:非  -not

例:找出来boot目录下文件大小在5~10M之间的文件或目录 

find /boot/ -size +5M -a -size -10M

技术分享图片

       匹配root目录下不是文件类型 或者 权限至少是755

find /root ! -type f -o -perm -755

技术分享图片


[动作]

-print: find命令将匹配的文件输出到标准输出

-ls:使用ls -dils 格式将匹配的文件输出到标准输出

-exec: find命令对匹配的文件直接执行该参数所给出的shell命令

-ok: 和-exec的作用相同,以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行


例:

find /var/log/ -mtime +100 -name "*.log" -ls

技术分享图片

find /var/log/ -mtime +100 -name "*.log" -print

技术分享图片

上篇介绍删除90天之前的文件,就是使用mtime 参数和-exec参数

指路->一条Linux的小技巧-删除N天前文件

查找 /var/log/目录下90天之前修改过的文件名字匹配为 "*.log" 结尾并且删除

find /var/log/ -mtime +90 -name "*.log" -exec rm -rf {} \;

find /var/log/ -mtime +90 -name "*.log" -ok rm -rf {} \;

技术分享图片

参数解释:

-ok 和 -exec  一样都是执行命令

rm    要执行的命令

{}     表示查找出来了文件内容

 \;   {} 和 \;之间要有空格。 固定语法,就是以这个结尾;


阅读原文请点击这里,关注公众号“睿普Eflypro”即可了解更多技术文章哦~~~


下一期,traceroute命令的使用,敬请期待~



linux系统使用之find命令常用用法集锦

标签:find命令   linux系统   

原文地址:http://blog.51cto.com/13475644/2052519

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!