Linux中如何使用grep命令搜索文件名
发表于:2025-02-13 作者:千家信息网编辑
千家信息网最后更新 2025年02月13日,这篇文章将为大家详细讲解有关Linux中如何使用grep命令搜索文件名,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。从文件中搜索并显示文件名当你从不止
千家信息网最后更新 2025年02月13日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安全错误
数据库的锁怎样保障安全
华为云数据库业务总裁
德国vpn代理服务器
互联网科技公司干嘛的
武汉编程软件开发服务
软件开发好还是去培训班好
计算机网络技术是软件硬件
软件开发工具磁盘空间
全国信息网络安全技术专业大学
服务器互为主备
网络安全违法违规案例
缺乏网络安全的危害
江苏软件开发技术服务
数据库如何删除一行
白云app软件开发排名
绍兴电脑软件开发要求
答辩问题简述数据库设计流程
数据库错误2045
海口专业电商进销存软件开发费用
互联网科技哪个行业吃香
数据库导航首页
北京检测设备软件开发
重庆肖涛软件开发
建立数据库的好处酒店
山东济南联想服务器销售电话
深信服离职倾向服务器
服务器受限制的站点安全登记
软件开发有什么资质吗
网络安全等级保护流程图
软件开发方法比较
浙江互联网科技成果展示馆