温馨提示×

怎么搜索linux文本文件

小樊
58
2026-10-01 14:57:19
栏目: 智能运维

在 Linux 中搜索文本文件或文件中的文本内容,常见方法如下:


一、按“文件名”搜索文本文件

1. find(最常用)

# 搜索当前目录及子目录下所有 .txt 文件
find . -name "*.txt"

# 不分大小写
find . -iname "*.txt"

# 只搜普通文件
find /path -type f -name "*.log"

2. locate(速度快,基于数据库)

locate "*.txt"

若结果不全,先更新数据库:sudo updatedb


二、按“文件内容”搜索文本

1. grep(最常用)

# 在文件中搜索包含 "error" 的行
grep "error" file.txt

# 递归搜索目录
grep -r "error" .

# 显示行号
grep -rn "error" .

# 忽略大小写
grep -ri "error" .

# 只显示文件名
grep -rl "error" .

2. 搜索并限定为文本文件

grep -r "keyword" --include="*.txt" .

三、搜索“内容 + 文件名”

find . -name "*.log" -exec grep -l "error" {} \;

四、查看文件内容工具

cat file.txt
less file.txt
head -n 20 file.txt
tail -n 20 file.txt

五、高级搜索

ack / ag(代码搜索更友好)

ag "function_name"

ripgrep(rg,最快)

rg "keyword"

如果你能说明:

  • 是找文件还是找内容
  • 是否在大量日志 / 代码目录

我可以给你更精确的命令示例。

0 踩