1、whereis命令

whereis是搜索系统命令的命令,也就是说,whereis命令不能搜索普通文件,而只能搜索系统命令。

whereis命令的基本信息如下:

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

2、which命令

which也是搜索系统命令的命令。

which命令的基本信息如下:

  • 命令名称:which
  • 英文原意:shows the full path of(shell)commands
  • 所在路径:/usr/bin/which
  • 执行权限:所有用户。
  • 功能描述:列出命令的所在路径。

和whereis命令的区别在于:

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

示例:

# 用whereis命令查询系统命令
[root@192 ~ ]# whereis ls
ls: /bin/ls /usr/share/man/man1p/ls.1p.gz /usr/share/man/man1/ls.1.gz /bin/ls:表示命令的位置
/usr/share/man/man1p/ls.1p.gz和/usr/share/man/man1/ls.1.gz:ls的帮助文档位置 # 用which命令查询系统命令
[root@192 ~]# which ls
alias ls='ls --color=auto'
/bin/ls alias ls='ls --color=auto':别名的显示。ls的全名为:ls --color=auto 扩展:查看系统中的别名
[root@192 ~]# alias
alias cp='cp -i'
alias l.='ls -d .* --color=auto'
alias ll='ls -l --color=auto'
alias ls='ls --color=auto'
alias mv='mv -i'
alias rm='rm -i'
alias which='alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde' 重点记住`ll`命令代表的意思。

3、locate命令

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

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

提示:

有的时候我们知道一个文件存在,但是找不到位置,用locate命令也搜不到。就可能是数据库没有进行更新,用updatedb命令强制更新数据库即可解决。(也可以退出登陆系统再进入,也可以进行更新,解决问题。)

locate命令的基本信息如下:

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

关于locate命令的配置文件

updatedb.conf配置文件对我们来说平时是用不着的。(记住这个配置文件名,了解即可)

# 打开配置文件,里边有4行。
[root@localhost ~ ] # vi/etc/updatedb.conf # 开启搜索限制,也就是让这个配置文件生效
PRUNE BIND MOUNTS="yes" # 在locate执行搜索时,禁止搜索这些文件系统类型,这些文件系统都不是Linux系统自带的文件系统。(Linux系统认为搜索这些没有意义)
PRUNEFS="……" # 在locate执行搜索时,禁止搜索带有这些扩展名的文件。(这些一般都是文件版本控制系统,系统认为这些文件变化太快,搜索这些文件没有意思)
PRUNENAMES="……" # 在locate执行搜索时,禁止搜索这些系统目录
PRUNEPATHS="……"

注意:在些目录中,就有我们常用练习的tmp目录。如果需要locate命令在tmp目录生效,手动修改一下updatedb.conf配置文件,重启一下就生效了。

『学了就忘』Linux基础命令 — 27、搜索操作相关命令的更多相关文章

  1. 『学了就忘』Linux系统管理 — 86、查看系统资源相关命令

    目录 1.vmstat命令 2.dmesg命令 3.free命令 4.查看CPU信息 5.查看本机登陆用户信息 (1)w命令 (2)who命令 6.uptime命令 7.查看系统与内核相关信息 1.v ...

  2. 『学了就忘』Linux系统管理 — 85、工作管理相关命令

    目录 1.工作管理简介 2.如何把命令放入后台 3.后台管理命令 (1)查看后台的工作 (2)将后台暂停的工作恢复到前台执行 (3)把后台暂停的工作恢复到后台执行 4.后台命令脱离登录终端运行 1.工 ...

  3. 『学了就忘』Linux基础 — 17、远程服务器关机及重启时的注意事项

    目录 1.为什么远程服务器不能关机 2.远程服务器重启时需要注意两点 3.不要在服务器访问高峰运行高负载命令 4.远程配置防火墙时不要把自己踢出服务器 5.指定合理的密码规范并定期更新 6.合理分配权 ...

  4. 『学了就忘』Linux基础命令 — 20、文件操作的相关命令

    目录 1.touch 命令 2.stat命令 3.cat命令 4.more命令 5.less命令 6.head命令 7.tail命令 1.touch 命令 touch命令用于创建空文件或修改文件时间, ...

  5. 『学了就忘』Linux基础命令 — 26、帮助命令

    目录 1.man命令 (1)man命令的快捷键 (2)man命令的帮助级别(了解即可) (3)man命令的使用 2.info命令 3.help命令 4.--help选项 1.man命令 man是最常见 ...

  6. 『学了就忘』Linux基础命令 — 28、别名和常用快捷键

    目录 1.别名 2.常用快捷键 1.别名 别名也是Shell中的命令. 命令的别名,就是命令的小名,主要是用于照顾管理员使用习惯的. 命令格式: # 查询系统中命令别名 [root@localhost ...

  7. 『学了就忘』Linux基础命令 — 30、find命令详细说明

    目录 1.find命令的基本信息 2.find命令基本使用 3.按照文件大小搜索 4.按照修改时间搜索 5.按照权限搜索 6.按照所有者和所属组搜索 7.按照文件类型搜索 8.逻辑运算符 (1)-a: ...

  8. 『学了就忘』Linux基础命令 — 32、压缩和解压缩相关命令

    目录 1.".zip"格式压缩 2.".gz"格式压缩 3.".bz2"格式压缩 4.".tar"格式打包 5.打包和压 ...

  9. 『学了就忘』Linux基础命令 — 35、网络中与其他机器通信的命令

    目录 1.write命令 2.wall命令 3.mail 命令 使用1:发送邮件 使用2:查看已经接收的邮件 使用3:发送文件内容 1.write命令 (1)write命令的基本信息 命令名称:wri ...

随机推荐

  1. echsop设置伪静态

    1.后台商店设置-基本设置-URL重写开启 2.修改httpd.conf文件 AllowOverride None 改为 AllowOverride AllLoadModule rewrite_mod ...

  2. AVS 通信模块之AVSConnectionManager

    AVSConnectionManager 类为客户端无缝地管理与AVS的连接 功能简介 失败时连接重试 允许后续重新连接 ping管理 AVS服务器断开时周期重连服务器 允许客户端完全启用或禁用连接管 ...

  3. whistle手机抓包(以安卓手机为例)

    环境:whistle:1.14.6 whistle手机抓包 以安卓手机为例 手机跟电脑要连同一个wifi. 1.启动whistle 使用w2 start启动whistle. 退出cmd后,whistl ...

  4. 牛客练习赛84F-牛客推荐系统开发之下班【莫比乌斯反演,杜教筛】

    正题 题目链接:https://ac.nowcoder.com/acm/contest/11174/F 题目大意 给出\(n,k\)求 \[\sum_{i_1=1}^n\sum_{i_2=1}^n.. ...

  5. Python3入门系列之-----元组

    元组 Python 的元组与列表类似,不同之处在于元组的元素不能修改 元组使用小括号,列表使用方括号 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可 实例 tup1 = (1,2,3,4, ...

  6. Java中的原子操作

    Java中的原子操作 原子性:指该操作不能再继续划分为更小的操作. Java中的原子操作包括: 除long和double之外的基本类型的赋值操作 所有引用reference的赋值操作 java.con ...

  7. WPF进阶技巧和实战08-依赖属性与绑定02

    将元素绑定在一起 数据绑定最简单的形式是:源对象是WPF元素而且源属性是依赖项属性.依赖项属性内置了更改通知支持,当源对象中改变依赖项属性时,会立即更新目标对象的绑定属性. 元素绑定到元素也是经常使用 ...

  8. node二进制安装

    你可能因为重装系统node的npm不管用, 但是node管用, 我不知道为什么, 但是 二进制安装就好了 管他那么多 下面这些网址你就可以了 https://blog.csdn.net/wocaoni ...

  9. 题解 [ZJOI2016]大森林

    题目传送门 Description 现在有 \(n\) 棵以 \(1\) 为根的树,每棵树有一个生长节点,有 \(m\) 次操作,每次操作是下面三种中的一个: 在 \(l\sim r\) 的这些树的生 ...

  10. 【.Net vs Java? 】 看一看二者的类有多像?

    1. 包(Package).命名空间(NameSpace) 1.1 概念 在Java中常用的是包(Package),较少提到NameSpace的概念.Java官方文档中这样说: 为了使类型更易于查找和 ...