Linux常用命令-文件搜索命令

which-->显示系统命令所在目录

语法:which [命令名称]

例:which ls

 

find-->查找文件或目录

语法:find [搜索路径] [搜索关键字]

-name 文件名

*匹配任意字符 init*

find /etc -name init*

?匹配单个字符 init???

find /etc -name init???

-size 文件大小      注意:一般是用block数据块来表示 512字节=0.5kB
find /etc -size +102400 注意: +大于 -小于 查找大于50mb的文件

-user 文件所有者

find /home -user helen 查找所有者为helen的文件

 

-type 文件类型

f 二进制文件

l 软链接文件

d 目录

find /etc -name init* -a -type d    意思是查找名字为init开头并且文件类型为目录的文件

 

连接符:

-a -->and

find /etc -size +102400 -a -size -204800 查找大于50mb,小于100mb的文件

-o -->or

find /etc -size -102400 -o -size +204800 查找小于50mb,或者是大于100mb的文件

 

find ...-exec 命令 { }  \;   

-exec 表示执行后面的命令(不询问,直接执行)

-ok  (弹出询问确认,然后需要自己去确实)

{}:表示find查询的结果

\ :表示转义符

; :表示语句的结束

find /etc -name inittab -exec ls -l {} \;     意思:在/etc下查找 inittab文件并显示其详细信息

 

-inum  文件节点数字

find ls -i  查找出来的文件能显示出i节点的值

find  .  -num 16      意思:   .  表示在当前的目录下查找i节点为16的文件

每个而文件都有i节点,根据i节点查找

 

时间的查找规定:

c--change 改变   :表示文件属性被修改过,例如:所有者、所属组、权限等

a--access 访问

m--modify 修改   :表示文件的内容被修改过

1、天 ctime atime mtime

 find /etc -mtime 1 

2、分钟 cmin amin mmin

find /etc -mmin -120 

  locate-->寻找文件或目录

原意:list files in databases

语法:locate [搜索关键字]

例:locate file   意思:列出所有跟file相关的文件

 

updatedb-->建立更新整个系统目录文件的数据库

原意:update the slocate database

语法:updatedb

 

locate  跟updatedb一般是用在一起,locate跟find不同,locate是在已有的数据库里面查找,而find是在整个系统目录下查找

 

grep-->在文件内容中搜索字符串匹配的行并输出

语法:grep [指定字符串] [源文件

例:grep ftp /etc/services

posted @ 2023-05-08 15:44  lucken  阅读(216)  评论(0)    收藏  举报