联系我们联系我们
电子邮箱电子邮箱

Linux下的系统查找(下)

[复制链接]

该用户从未签到

gilgamesh 发表于 2017-9-14 14:50:48
208 0
       紧接着上一篇说,上一篇说到了三种查找方式:which、whereis和locate,which用来查找指定目录下可执行程序;whereis不仅可以查找可执行程序,还能列出跟该可执行程序命名相同的帮助文件和配置文件;而locate搜索范围就更广了,简单概括为关键字搜索,只要含有你所搜索的字符,locate就会全部列出来
       上篇文章地址:https://bbs.77169.com/forum.php? ... &extra=page=1
       这一篇文章将着重讲解find命令,通常情况下,查找某个文件时,使用前面三个命令就够了,基本上是可以满足需求的,所以不建议使用find命令,find命令跟windows下的搜索方式是一样的,所以搜索起来会相比上述三个命令慢很多,尤其是当数据量较大时,但是find命令又可以满足很多不同的查找要求,所以我们来看看吧

       首先,单纯的使用find,会列出当前目录所有的文件,在根目录下,会列出所有根目录下的文件,在home目录下,会列出所有home目录下的文件
       1.png
       下面就来讲解一下加上各种参数的find命令的作用
一、时间参数
1、-atime参数,查找指定时间段内被读取的某些文件
2、-ctime参数,查找指定时间段内内容的修改、权限的修改等这些状态修改的某些文件
3、-mtime参数,查找指定时间段内名称修改、文件内容的修改的某些文件
       格式都是一样的,这里只演示一个就可以了,“/”代表的是目录,如果需要查找home下的文件,那就把"/"修改成“/home”就好了,最后的“0”这个值,0代表最近24小时内,1就代表一天前,3就代表三天前,这里的一天前或者三天前不是这些天内的,而是指定的那一天,也就是说参数是3时,查找的是三天前的那一天的,而不是这三天内的
      格式:find / -atime 0              find /home -mtime 1
      如果想列出所有天数的被修改过的文件,可以这样
      find / -atime 5  代表列出所有五天之前被修改过的文件
      find / -atime -5   代表列出所有五天之内被修改过的文件

二、用户或者组名参数
1、-user                   查找某个用户的文件
find /home -user root   这样就可以列出在home目录下属主是root用户的文件
2.png
2、-nouser               查找不属于任何用户和任何用户组的文件  
find / -nouser
3、-group                查找某个组的文件
格式和查找用户文件是一样的     find / -group 组名

三、文件权限参数
1、find -name / -name passwd      精确查找名称为passwd的文件,跟locate不一样,这个只会列出名称为passwd的文件,如果只是文件名里含有passwd还有别的字符的话,是不会被列出来的
3.png
2、find / -type f                 查找指定文件类型,f为file普通文件,l为link链接文件,d为目录

4、其他参数
find / -size 10000K   查找大小大于10000K的文件
5.png


OK,linux的查找系统讲的差不多了,拜拜!


评分

参与人数 1金钱 +12 收起 理由
一把附魔钻石剑 + 12 乌鸦坐飞机

查看全部评分

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

发表新帖

小黑屋|手机版|Archiver|华盟论坛 ( 京ICP证070028号 )

Powered by 华盟网 X 8.0  © 2001-2013 Comsenz Inc.  华夏黑客同盟