跳到主要内容

Linux搜索查找相关指令

find

find: 将从指定目录下递归地 遍历遍历 各个目录,将所有满足条件的目录显示在控制台。

[缺点]: 如果从 根目录 / 开始搜索的话, 可能会比较慢.

选项功能
-name按照文件的名称查找文件
-user查找指定用户所属的文件
-size按照指定的大小查找文件

语法:

find [开始目录] [选项] [目标文件/用户/大小]

# 详细解释(示例):
# -name
find / -name loli.c # 从根目录开始查找名字为 loli.c 的文件
find / -name '*.text' # 支持通配符 * 与 ?

# -user
find ./ -user 'root' # 从当前目录开始查找 root用户所属的文件

# -size
find ./ -size +100M # 从当前目录开始查找 大于 100M 的文件
find ./ -size -100M # 从当前目录开始查找 小于 100M 的文件
find ./ -size 100M # 从当前目录开始查找 等于 100M 的文件
# 值得注意的是,文件大小单位默认是块(block),而非字节。
# 如果想要按照字节计算,可以在数字后面加上 c。
# 此外,还可以使用 k(千字节)、M(兆字节)和 G(吉字节)等后缀来指定不同的单位
Bash

locate

locate: 该指令可以快速定位文件路径。locate指令利用事先建立好的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件。locate指令无需遍历整个文件系统,查询速度较快

Tip

特别说明:

由于locate指令基于数据库进行查询。所以第一次查询运行前,必须使用updatedb指令创建locate数据库

示例:

[root@hxlinux ~]# updatedb
[root@hxlinux ~]# locate qwq.c
/root/dev/mm/qwq.c
Shell

which

which: 该指令可以查看某个指令在哪个目录下.

示例:

[root@hxlinux ~]# which ls
alias ls='ls --color=auto'
/usr/bin/ls
[root@hxlinux ~]# which cd
/usr/bin/cd
Shell

grep

grep: 过滤查找,管道符,”|“,表示前一个指令的处理结果输出传递给后面的指令处理。一般我们将 |grep一起结合起来使用

选项功能
-n显示行号
-i忽略自动大小写

语法:

grep [选项] [查找内容]
Bash

示例:

[root@hxlinux mm]# cat qwq.c | grep -ni heLLO
30: printf("Hello C!\n");
Shell
请作者喝奶茶:
Alipay IconQR Code
Alipay IconQR Code
本文遵循 CC CC 4.0 BY-SA 版权协议, 转载请标明出处
Loading Comments...