Linux中如何使用grep命令搜索文件名
发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,这篇文章将为大家详细讲解有关Linux中如何使用grep命令搜索文件名,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。从文件中搜索并显示文件名当你从不止
千家信息网最后更新 2025年12月03日Linux中如何使用grep命令搜索文件名
这篇文章将为大家详细讲解有关Linux中如何使用grep命令搜索文件名,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
从文件中搜索并显示文件名
当你从不止一个的文件中搜索时,默认它将显示文件名:
grep "word" 文件名grep root /etc/*
示例输出:
/etc/bash.bashrc: See "man sudo_root" for details./etc/crontab:17 * * * * root cd / && run-parts --report /etc/cron.hourly/etc/crontab:25 6 * * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.daily )/etc/crontab:47 6 * * 7 root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.weekly )/etc/crontab:52 6 1 * * root test -x /usr/sbin/anacron || ( cd / && run-parts --report /etc/cron.monthly )/etc/group:root:x:0:grep: /etc/gshadow: Permission denied/etc/logrotate.conf: create 0664 root utmp/etc/logrotate.conf: create 0660 root utmp
每行开始的第一个部分是文件名(如:/etc/crontab、/etc/group)。使用 -l 选项可以只显示文件名:
grep -l "string" filenamegrep -l root /etc/*
示例输出:
/etc/aliases/etc/arpwatch.confgrep: /etc/at.deny: Permission denied/etc/bash.bashrc/etc/bash_completion/etc/ca-certificates.conf/etc/crontab/etc/group
你也可以逆转输出;使用 -L 选项来输出那些不匹配的文件的文件名:
grep -L "word" filenamegrep -L root /etc/*
示例输出:
/etc/apm/etc/apparmor/etc/apparmor.d/etc/apport/etc/apt/etc/avahi/etc/bash_completion.d/etc/bindresvport.blacklist/etc/blkid.conf/etc/bluetooth/etc/bogofilter.cf/etc/bonobo-activation/etc/brlapi.key
根据文件内容查找文件
输入以下命令:
grep 'string' *.txtgrep 'main(' *.cgrep '#include' *.cgrep 'getChar*' *.cgrep -i 'ultra' *.confgrep -iR 'ultra' *.conf
其中
-i : 忽略模式(匹配字符串 valid、 VALID、 ValID )和输入文件(匹配 file.c FILE.c FILE.C)的大小写。
-R : 递归读取每个目录下的所有文件。
高亮匹配到的模式
在搜索大量文件的时候你可以轻松地高亮模式:
$ grep --color=auto -iR 'getChar();' *.c
为查找到的模式显示文件名和行号
你也许需要显示文件名和行号:
$ grep --color=auto -iRnH 'getChar();' *.c
其中,
-n : 在输出的每行前面添加以 1 开始的行号。
-H : 为每个匹配打印文件名。要搜索多个文件时这是默认选项。(LCTT 译注:-h 选项强制隐藏文件名;另外 -l 和 -L 选项用于仅显示匹配/不匹配的文件名,而 -H 和 -h用于控制在显示匹配行前显示/不显示文件名,注意区分。)
$grep --color=auto -nH 'DIR' *
输出样例:
你也可以使用 find 命令:
代码如下:
$ find . -name "*.c" -print | xargs grep "main("关于Linux中如何使用grep命令搜索文件名就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
文件
文件名
输出
搜索
命令
模式
内容
示例
行号
文章
更多
知识
篇文章
高亮
输入
不错
从不
代码
多个
大小
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
智能一卡通系统对数据库要求
深圳市宜游网络技术有限公司
上海佰游网络技术有限公司
传奇手游服务器限速怎么办
网站数据库设计原则
移动最新通信网络技术
机架式式服务器图片
软件开发服务服务期限
河南惠普服务器维修调试
江阴正睿服务器维修服务站
查询数据中是否含某一数据库
福建顶点软件开发平台
神武副本加成和服务器等级
局域网服务器账号密码哪里查询
图书馆公开招标中国知网数据库
长春思科大学网络技术学院
富锦市网络安全信息中心
实验室服务器跑Python
数据库建表例子6
互联网领先科技成果汇总
数据库杀锁表
超融合服务器价格查询
编程语言和软件开发的区别
设置主键 数据库
创建数据库的三个基本表
江津区常规软件开发服务代理商
我国网络安全法律颁布的顺序
离线登录无政府服务器
网络安全防范和保护的核心策略
幻塔不用服务器能联机吗