常用Linux命令 - 搜索命令

简介: whereis 是搜索系统命令的命令(像绕口令一样),也就是说,whereis 命令不能搜索普通文件, 而只能搜索系统命令。whereis 命令的基本信息如下。
+关注继续查看

搜索命令


whereis 命令


whereis 是搜索系统命令的命令(像绕口令一样),也就是说,whereis 命令不能搜索普通文件, 而只能搜索系统命令。whereis 命令的基本信息如下。


  • 命令名称:whereis。
  • 英文原意:locate the binary, source, and manual page files for a command。
  • 所在路径:/usr/bin/whereis。
  • 执行权限:所有用户。
  • 功能描述:查找二进制命令、源文件和帮助文档的命令。


which 命令


which 也是搜索系统命令的命令。和 whereis 命令的区别在于:


  • whereis 命令可以在查找到二进制命令的同时,查找到帮助文档的位置;
  • 而 which 命令在查找到二进制命令的同时,如果这个命令有别名,则还可以找到别名命令。


locate 命令


基本用法 locate 命令才是可以按照文件名搜索普通文件的命令。


  • 优点:按照数据库搜索,搜索速度快,消耗资源小。数据库位置/var/lib/mlocate/mlocate.db, 可以使用 updatedb 命令强制更新数据库。
  • 缺点:只能按照文件名来搜索文件,而不能执行更复杂的搜索,比如按照权限、大小、修改时间等搜索文件。


locate 命令的基本信息如下。


  • 命令名称:locate。
  • 英文原意:find files by name。
  • 所在路径:/usr/bin/locate。
  • 执行权限:所有用户。
  • 功能描述:按照文件名搜索文件。


配置文件


[root@localhost ~]# vi /etc/updatedb.conf
PRUNE_BIND_MOUNTS = "yes"

#开启搜索限制,也就是让这个配置文件生效
PRUNEFS = "……"

#在 locate 执行搜索时,禁止搜索这些文件系统类型
PRUNENAMES = "……"

#在 locate 执行搜索时,禁止搜索带有这些扩展名的文件
PRUNEPATHS = "……"

#在 locate 执行搜索时,禁止搜索这些系统目录


find 命令


find 命令的基本信息如下。


  • 命令名称:find。
  • 英文原意:search for files in a directory hierarchy。
  • 所在路径:/bin/find。
  • 执行权限:所有用户。
  • 功能描述:在目录中搜索文件。


按照文件名搜索


[root@localhost ~]# find 搜索路径 [选项] 搜索内容
选项:
-name: 按照文件名搜索
-iname: 按照文件名搜索,不区分文件名大小写
-inum: 按照 inode 号搜索


按照文件大小搜索


[root@localhost ~]# find 搜索路径 [选项] 搜索内容
选项:
-size [+|-]大小:  按照指定大小搜索文件


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


find 命令的单位:


[root@localhost ~]# man find
-size n[cwbkMG]

File uses n units of space. The following suffixes can be used:
'b' for 512-byte blocks (this is the default if no suffix is used)

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

'c' for bytes

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

'w' for two-byte words 

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

'k' for Kilobytes (units of 1024 bytes)

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

'M' for Megabytes (units of 1048576 bytes)

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

'G' for Gigabytes (units of 1073741824 bytes)

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


按照修改时间搜索


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


[root@localhost ~]# find 搜索路径 [选项] 搜索内容
选项:
-atime [+|-]时间:  按照文件访问时间搜索
-mtime [+|-]时间:  按照文件数据修改时间搜索
-ctime [+|-]时间:  按照文件状态修改时间搜索


这种方法非常简单,输出的帮助信息基本上是 man 命令的信息简要版。 对于这 4 种常见的获取帮助的方法,大家可以按照自己的习惯任意使用。


这三个时间的区别我们在 stat 命令中已经解释过了,这里用 mtime 数据修改时间来举例,重点说 说“[+-]”时间的含义。


  • -5:代表 5 天内修改的文件。
  • 5:代表前 5~6 天那一天修改的文件。
  • +5:代表 6 天前修改的文件。
相关文章
|
2天前
|
Linux 网络安全 开发工具
Linux 命令总结
Linux 命令总结
|
5天前
|
Linux
百度搜索:蓝易云【【Linux系统】fdisk相关分区命令。】
请注意,`fdisk`是一个强大的工具,但在使用之前请确保对磁盘分区的操作非常谨慎,以免丢失数据。另外,以上命令仅提供了一些常见的 `fdisk`用法示例,您可以通过 `man fdisk`命令查看更多详细的用法和选项。
19 0
|
7天前
|
机器学习/深度学习 Linux C语言
Linux基础操作3(命令格式,命令查询帮助)
Linux基础操作3(命令格式,命令查询帮助)
8 0
|
8天前
|
关系型数据库 MySQL 应用服务中间件
基于Linux命令实现WordPress手动建站
本场景将提供1台Linux云服务器实例,通过Linux命令实现WordPress的部署实践。
26 0
|
9天前
|
监控 Unix Linux
Linux文件查看命令
Linux文件查看命令
21 0
|
9天前
|
存储 Linux
Linux磁盘管理命令
Linux磁盘管理命令
17 0
|
9天前
|
Linux 数据安全/隐私保护
Linux用户管理命令
Linux用户管理命令
12 1
|
9天前
|
Linux
Linux命令作业
Linux命令作业
18 0
|
10天前
|
Java Linux API
【InsCode】InsCode打造的JavaSE与Linux命令互融的伪Linux文件系统小项目
【InsCode】InsCode打造的JavaSE与Linux命令互融的伪Linux文件系统小项目
19 0
|
11天前
|
Linux Android开发
Linux下tar命令结合split实现的分包和并包
Linux下tar命令结合split实现的分包和并包
30 1
相关产品
云迁移中心
推荐文章
更多