文件内容查找学习
说明
对于文件内容的查找,linux上主要有3个命令,可进行查找定位,每个命令的侧重方向不一样。
grep就是在茫茫字符串中找到目标字符串,并且能够进行一定的统计取反等。但是不能对文件内容进行删除,替换,修改,统计个数,对提取的字符串进行执行命令等等。
sed命令,理论上, 我觉得是能够它直接代替grep,因为sed的功能是能够覆盖grep的。在grep的基础上,增加了对文件内容的增删改的功能
awk的命令就更加强大了,我觉得,这个awk命令,我觉得能够顶替grep和sed,因为awk的命令包含了grep和sed的所有功能,而且更加灵活。
一.grep
grep是用来抓取目标字符串,如果对这个目标字符串有特殊的需求,需要处理,可以使用选项中的命令,最为重要的是,它可以使用正则表达式,一旦能够使用正则表达式,就意味着,没有它找不到的字符串。正则表达式,真是牛逼。
1.grep的命令格式
grep [选项] [要查询的字符串] [在哪个文件查询]
grep的选项也是非常多,但是常用的就是那么几个。
选项 含义 功能描述
-i ignore case 忽略大小写
-v invert match 不匹配匹配的
-l file-with-match 输出匹配的文件名
-L file-without-match 输出不匹配的文件名
-c count 输出匹配的数目(行数)
-n number 输出匹配行的同时在前面加上文件名及在文件名中的行数
-h no-filename 抑制文件名的输出
举例说明:
2.正则表达式
3.与find结合使用
二.sed
Linux sed 命令是利用脚本来处理文本文件。
sed 可依照脚本的指令来处理、编辑文本文件。
Sed 主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等。
sed命令可以用来