首页 > 代码库 > Linux命令:find、locate
Linux命令:find、locate
快速搜索:locate
此命令需要预先建立数据库,数据库默认每天更新一次,可用updatedb命令更新数据库。如果没有安装locate用yum install –y mlocate安装,安装完后使用updatedb命令更新数据库(该命令搜出来的结果非常不精准,我们在实际使用中都是用find命令)
[root@root ~]# touch 123.txt //比如我们创建一个文件
[root@root ~]# locate 123.txt //然后搜索这个文件是搜索不到的
[root@root ~]#
[root@root ~]# updatedb //更新数据库后才能找得到
[root@root ~]# locate 123.txt
/root/123.txt
高级搜索:find
用法:find + 文件路径 + 查找参数
1. 基于名字的搜索
[root@root ~]# find / -name passwd //在根目录下搜索passwd文件 /usr/bin/passwd /selinux/class/passwd /selinux/class/passwd/perms/passwd /etc/passwd /etc/pam.d/passwd
2. 基于类型的搜索
[root@root home]# find ./ -type d //搜索当前目录下的目录 ./ //d表示基于目录类型的搜索 ./a [root@root home]# find ./ -type f //搜索当前目录下的文件 ./1.py //f表示基于文件类型的搜索 ./2.py
3. 基于更改时间的搜索
-atime 最近一次访问时间(单位为天)
-mtime 最近一次内容修改时间(单位为天)
-ctime 最近一次属性修改时间(单位为天)
-amin 最近一次访问时间(单位为分钟)
-mmin 最近一次内容修改时间(单位为分钟)
-cmin 最近一次属性修改时间(单位为分钟)
[root@root home]# find ./ -mtime -5 //-5表示5天内更改过的文件 ./ //如果是+5则表示修改时间超过5天的文件 ./1.py ./a
[root@root home]# find ./ -mmin +5 //+5表示修改时间超过5分钟的文件 ./ ./1.py ./a
注意:当我们更改文件内容时,ctime也会随着更改,因为文件的内容更改了,也就意味着文件大小也被更改了,那么就意味着属性被修改,因此ctime会更改
[root@root home]# stat 1.py //stat命令可以查看文件的atime、mtime、ctime File: "1.py" Size: 114 Blocks: 8 IO Block: 4096 普通文件 Device: fd00h/64768d Inode: 781923 Links: 1 Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root) Access: 2016-08-07 11:46:00.355757826 +0800 //atime信息 Modify: 2016-08-07 11:45:58.826754450 +0800 //mtime信息 Change: 2016-08-07 11:45:58.870752238 +0800 //ctime信息
4. 基于文件权限的搜索
//基于文件权限的搜索要加上 –perm 参数
[root@root home]# find ./ -perm 777 //搜索当前目录下文件权限为777的文件 ./c ./b ./a [root@root home]# find ./ -perm 644 //搜索当前目录下文件权限为644的文件 ./1.py
Linux命令:find、locate
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。