系统相关
首页 > 系统相关> > 09.Linux中的搜素命令

09.Linux中的搜素命令

作者:互联网

目录

1.whereis 命令 

2.which 命令 

3.locate 命令 

4.find 命令 


1.whereis 命令 

功能描述:是搜索系统命令的命令,查找二进制命令、源文件和帮助文档的命令。

2.which 命令 

功能和whereis一样,只是多了个如果这个命令有别名,则还可以找到别名命令的功能

功能描述:列出命令的所在路径。

3.locate 命令 

基本用法

优点:按照数据库搜索,搜索速度快,消耗资源小。数据库位置/var/lib/mlocate/mlocate.db,

可以使用 updatedb 命令强制更新数据库hb。

功能描述:按照文件名搜索文件。

4.find 命令 

功能描述:在目录中搜索文件。功能最强大的搜索命令。

按照文件名搜索 

[root@localhost ~]# find 搜索路径 [选项] 搜索内容

搜索路径:指定搜索位置,如:/

搜索内容:指定搜索文件,如:abc

选项:

-name: 按照文件名搜索

-iname: 按照文件名搜索,不区分文件名大小写

     -inum: 按照 inode 号搜索

按照文件大小搜索 

[root@localhost ~]# find 搜索路径 [选项] 搜索内容

选项:

     -size [+|-]大小: 按照指定大小搜索文件

     这里的“+”的意思是搜索比指定大小还要大的文件,“-”的意思是搜索比指定大小还要小的文件。

find 命令的单位:

这是默认单位,如果单位为 b 或不写单位,则按照 512 Byte 搜索

搜索单位是 c,按照字节搜索

        搜索单位是 w,按照双字节(中文)搜索

        按照 KB 单位搜索,必须是小写的 k

        按照 MB 单位搜索,必须是大写的 M

        按照 GB 单位搜索,必须是大写的 G

按照修改时间搜索 

Linux 中的文件有访问时间(atime)、数据修改时间(mtime)、状态修改时间(ctime)这三个时间,我们也可以按照时 间来搜索文件。

[root@localhost ~]# find 搜索路径 [选项] 搜索内容

选项:

     -atime [+|-]时间: 按照文件访问时间搜索

     -mtime [+|-]时间: 按照文件数据修改时间搜索

- ctime [+|-]时间: 按照文件状态修改时间搜索

— -5:代表 5 天内修改的文件。

—   5:代表前 5~6 天那一天修改的文件。

— +5:代表 6 天前修改的文件。

按照权限搜索 

命令格式。

[root@localhost ~]# find 搜索路径 [选项] 搜索内容

选项:

     -perm 权限模式: 查找文件权限刚好等于“权限模式”的文件

     -perm -权限模式: 查找文件权限全部包含“权限模式”的文件

     -perm +权限模式: 查找文件权限包含“权限模式”的任意一个权限的文件(新版 find 中用/权限模式)

按照所有者和所属组搜索 

[root@localhost ~]# find 搜索路径 [选项] 搜索内容

选项:

    -uid 用户 ID: 按照用户 ID 查找所有者是指定 ID 的文件

     -gid 组 ID: 按照用户组 ID 查找所属组是指定 ID 的文件

     -user 用户名: 按照用户名查找所有者是指定用户的文件

    -group 组名: 按照组名查找所属组是指定用户组的文件

     -nouser: 查找没有所有者的文件

按照文件类型搜索 

[root@localhost ~]# find 搜索路径 [选项] 搜索内容

选项:

     -type d: 查找目录

     -type f: 查找普通文件

     -type l: 查找软链接文件

逻辑运算符 

[root@localhost ~]# find 搜索路径 [选项] 搜索内容

选项:

     -a: and 逻辑与

     -o: or 逻辑或

     -not: not 逻辑非 -not可以用!代替

-a:and 逻辑与

find 命令也支持逻辑运算符选项,其中-a 代表逻辑与运算,也就是-a 的两个条件都成立,find 搜索的结果才 成立。举个例子:

[root@localhost ~]# find . -size +2k -a -type f

#在当前目录下搜索大于 2KB,并且文件类型是普通文件的文件

-o:or 逻辑或

-o 选项代表逻辑或运算,也就是-o 的两个条件只要其中一个成立,find 命令就可以找到结果。例如:

[root@localhost ~]# find . -name cangls -o -name bols

./cangls

./bols

#在当前目录下搜索文件名要么是 cangls 的文件,要么是 bols 的文件

-not:not 逻辑非

-not 是逻辑非,也就是取反的意思。举个例子:

[root@localhost ~]# find . -not -name cangls

#在当前目录下搜索文件名不是 cangls 的文件

-exec 选项 

选项的格式。

[root@localhost ~]# find 搜索路径 [选项] 搜索内容 -exec 命令 2 {} \;

-exec 后面的命令不支持别名

其次,这个选项的作用其实是把 find 命令的结果交给由“-exec”调用的命令 2 来处理。“{}”就代表 find 命令的查找 结果。

-ok 选项 

“-ok”选项和“-exec”选项的作用基本一致,区别在于:“-exec”的命令 2 会直接处理,而不询问;“-ok”的命令 2 在 处理前会先询问用户是否这样处理,在得到确认命令后,才会执行。

标签:选项,文件,09,命令,搜索,搜素,Linux,find,localhost
来源: https://blog.csdn.net/weixin_46659843/article/details/122446198