0.查找命令

目录

[🍉 find - 查找文件](#🍉 find - 查找文件)

[🍇 grep](#🍇 grep)

[🍓 which](#🍓 which)

🍈locate

总结:


🍉 find - 查找文件

bash 复制代码
# 语法
# find [搜索范围] [选项]
#     选项
#        -name<查询方式>    按照指定的文件名查找模式查找文件
#        -user<用户名>      查找属于指定用户所有文件
#        -size<文件大小>    按照指定的文件大小查找文件

# 在当前目录及其子目录下查找所有 .txt 文件:find . -name "*.txt"

# 1. 按照文件名:根据文件名称查找/home目录下的hello.txt文件

find /home -name hello.txt

# 2. 查找整个Linux系统下面大于200M的文件(+n 大于 -n小于 n等于,单位有 K, M, G)

find / size +200M

# 3. 按拥有者:查找/opt目录下,用户名称为nobody的文件

find /opt -user nobody

🍇grep

bash 复制代码
# 基本语法
# grep [选项] 查找内容 源文件
#     常用选项
#        -n 显示匹配行以及行号
#        -i 忽略字母大小写

# 应用案例 :在hello.txt文件中,查找"yes"所在行并且显示行号
# 写法1
cat /home/hello.txt | grep "yes"
# 写法2
grep -n "yes" /home/hello.txt 

🍓which

bash 复制代码
# 环境变量PATH中保存了查找命令时需要遍历的目录。which指令会在
# 环境变量$PATH设置的目录里查找符合条件的文件。也就是说,使用
# which命令,就可以看到某个系统命令是否存在,以及执行的到底是
# 哪一个位置的命令。

# (1)用法:
# 用法:  which  [选项参数] [命令名]

# (2)功能:
# 功能:查找环境变量中的文件

# (3)选项参数:
#   1) -n 指定文件名长度,指定的长度必须大于或等于所有文件中最长的文件名。
#   2) -p 与-n参数相同,但此处的包括了文件的路径。
#   3) -w 指定输出时栏位的宽度。
#   4) -V 显示版本信息

[root@localhost sunjimeng]# which pwd
/usr/bin/pwd
[root@localhost sunjimeng]# which head
/usr/bin/head
[root@localhost sunjimeng]# which cat
/usr/bin/cat

🍈locate

bash 复制代码
# 基本语法
# locate 搜索文件
# Notes: locate指令基于数据库进行查询,所以第一次运行前,必须使用
#        updatedb指令创建locate数据库

#应用案例:使用locate指令快速定位hello.txt文件
updatedb
locate hello.txt

总结:

我们经常在linux要查找某个文件,但不知道放在哪里了,可以使用下面的一些命令来搜索:

  • which 查看可执行文件的位置。
  • whereis 查看文件的位置。
  • locate 配合数据库查看文件位置。
  • find 实际搜寻硬盘查询文件名称。
相关推荐
bugtraq202116 分钟前
XiaoMi Mi5(gemini) 刷入Ubuntu Touch 16.04——安卓手机刷入Linux
linux·运维·ubuntu
xmweisi22 分钟前
【华为】报文统计的技术NetStream
运维·服务器·网络·华为认证
VVVVWeiYee27 分钟前
BGP配置华为——路径优选验证
运维·网络·华为·信息与通信
陆鳐LuLu1 小时前
日志管理利器:基于 ELK 的日志收集、存储与可视化实战
运维·elk·jenkins
CodeWithMe1 小时前
[ Vim ] 常用命令 and 配置
linux·编辑器·vim
DC_BLOG1 小时前
Linux-GlusterFS进阶分布式卷
linux·运维·服务器·分布式
yourkin6661 小时前
TCP...
服务器·网络·tcp/ip
cookies_s_s2 小时前
Linux--进程(进程虚拟地址空间、页表、进程控制、实现简易shell)
linux·运维·服务器·数据结构·c++·算法·哈希算法
丁劲犇2 小时前
碳基生物的悲歌-DeepSeek思考实现Linux动态库递归收集工具
linux·递归·deepseek·ldd
zhouwu_linux2 小时前
MT7628基于原厂的SDK包, 修改ra1网卡的MAC方法。
linux·运维·macos