Linux下查找文件的命令:locate 和 find

Linux下查找文件的命令有两个;locate 和find

一、Locate命令

非实时的,查找时根据全系统文件数据库进行的,模糊查找,简单介绍下它的两个选项:

#locate  -i       

//查找文件的时候不区分大小写 比如:locate  –i   test

#locate  -n      

//只显示查找结果的前N行     比如:locate  -n 5   test


二、Find命令

使用格式 :   find [指定查找目录] [查找规则]  [查找完后可执行操作

查找路径:默认为当前目录

查找标准:默认为指定路径下的所有文件

查找到以后的处理操作:默认为显示

1、[查找规则]

1.1 根据文件名查找

#  -name   //根据文件名查找(精确查找)

#  -iname  //根据文件名查找,但是不区分大小写

1.2 根据文件所属用户和组来查找文件

#  -user      //根据属主来查找文件

#  -group //根据属组来查找文件

1.3 -a  and  -o and  –not的使用

#  -a 连接两个不同的条件(两个条件必须同时满足)

#  -o 连接两个不同的条件(两个条件满足其一即可)

#  -not 对条件取反的

1.4 根据文件时间戳的相关属性来查找文件

# -atime

# -mtime

# -ctime

# -amin

# -mmin

# -cmin

所以这里atime,mtime,ctime就是分别对应的“最近一次访问时间”“最近一次内容修改时间”“最近一次属性修改时间”,这里的atime的单位指的是“天”,amin的单位是分钟 

find . -mtime -2

在.下查最近两天内改动过的文件

find . -atime -1                                    

查1天之内被存取过的文件

find . -mmin +60                                    

在.下查60分钟前改动过的文件

find . -amin +30                                    

查最近30分钟前被存取过的文件

1.5 根据文件类型来查找文件

# -type

f:普通文件;d:目录文件;l:链接文件;b:块设备文件;c:字符设备文件;p:管道文件;s:socket文件

1.6 根据大小来查找文件

# -size

#find  /tmp -size   2M           //查找在/tmp 目录下等于2M的文件

#find  /tmp -size  +2M           //查找在/tmp 目录下大于2M的文件

#find  /tmp -size  -2M           //查找在/tmp 目录下小于2M的文件

1.7 根据文件权限查找文件

# -perm

#find  . -perm 755           //在当前目录下权限是755的文件

#find  .  -perm +222         

//表示只要有一类用户(属主,属组,其他)的匹配写权限就行

#find  . -perm -222         

//表示必须所有类别用户都满足有写权限

1.8 -nouser  and  -nogroup

#find  / -nogroup –a –nouser       在整个系统中查找既没有属主又没有属组的文件(这样的文件通常是很危险的,作为系统工程师的我们应该及时清除掉)

2、[查找后的操作]

# -print   //默认情况下的动作

# -ls  //查找到后用ls 显示出来

# -ok  [commend] //查找后执行命令的时候询问用户是否要执行

# -exec [commend]    //查找后执行命令的时候不询问用户,直接执行

这里要注意{}的使用:替代查找到的文件

#find  /tmp -atime  +30  –exec rm –rf {}  \; #删除查找到的超过30天没有访问过文件

我们也可以使用xargs来对查找到的文件进一步操作find命令把匹配到的文件传递给xargs命令,而xargs命令每次只获取一部分文件而不是全部,不像-exec选项那样。这样它可以先处理最先获取的一部分文件,然后是下一批,并如此继续下去。  


三、其他查找命令
which: 定位一个命令的完整路径,有可能会显示出命令的别名
whereis:与which类似,而且会额外的给出给出该命令的man页的完整路径
whatis:将会在whatis数据库中查询file,当你想确认系统命令和重要的配置文件的时候


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值