产品服务AMH 免费服务器主机面板SSL证书 免费SSL证书申请编程助手免费智能写代码、翻译NewAMYSQL 免费MySQL管理工具AMFTP 免费FTP管理客户端

AMH 社区首页

 AMH社区 - 开放自由有价值的社区

[综合话题] Linux中通过grep命令检索文件内容

9513645
银牌会员
1428.02 价值分

9513645 发表于 2017-11-18 14:05:09
Linux系统中搜索、查找文件中的内容,一般最常用的是grep命令,另外还有egrep命令,同时vi命令也支持文件内容检索。

搜索某个文件里面是否包含字符串

命令格式:grep "被查找的字符串" filename1

例如:

grep "0101034175" /data/transaction.20170118.log
在多个文件中检索某个字符串

命令格式:

grep "被查找的字符串t" filename1 filename2 filename3 ...
grep "被查找的字符串" *.log
显示所检索内容在文件中的行数,可以使用参数-n

命令格式: grep -n "被查找的字符串" *.log

检索时需要忽略大小写问题,可以使用参数“-i”

命令格式: grep -i "被查找的字符串" *.log

从文件内容查找不匹配指定字符串的行

命令格式:grep –v "被查找的字符串" 文件名

搜索、查找匹配的行数:

命令格式:

grep –c "被查找的字符串" 文件名
grep "被查找的字符串" 文件名 | wc -l
递归搜索某个目录以及子目录下的所有文件

命令格式:grep –r "被查找的字符串" 文件目录

获取哪些文件包含搜索的内容,并列出文件名

命令格式:grep -H –r "被查找的字符串" 文件目录 | cut -d: -f1 [| uniq]

例如:

grep -H -r "v\$temp_space_header" /u01/app/Oracle/product/11.1.0/dbhome_1/rdbms/admin/ | cut -d: -f1

grep -H -r "v\$temp_space_header" /u01/app/oracle/product/11.1.0/dbhome_1/rdbms/admin/ | cut -d: -f1 | uniq
获取与整个搜索字符匹配的内容

命令格式:grep –w "被查找的字符串" 文件名

grep命令与find 命令的结合,实现联合检索

命令格式:find . -name '*.sql' -exec grep -i '被检索内容' {} \; -print

例如:

find . -name '*.sql' -exec grep -i 'v\$temp_space_header' {} \; -print
评价: 这个话题有价值吗?  没有 (0分)   有, 感谢 (0分)
2017-11-18 14:05:09 1
 1  (总1页)
AMH社区列表
用户服务中心