Linux中,如何将grep 搜索到的结果导入到一个文件,但要剔除没找到的项,只留找到的项。

Linux中,如何将grep 搜索到的结果导入到一个文件,但要剔除没找到的项,只留找到的项。,第1张

grep 本来弊弯银就是过滤命令。

你将其他命令得到的结闹饥果,比如ls -l命令得到的列表,通过管道租宴符 | 导出到grep,后面接上要查找的关键字,再把结果通过重定向导出到文件

就像:lsmod | grep wifi >>~/result.txt

-i //忽略大小写

-v //取反匹配

-w //单词匹配

-q //静默匹配,不将结果显示在屏幕

-E //扩展匹配 (){}

-P //perl规则 \d \D \W 等等

1.非交互式

2.逐行处理

3.可以对文本进行增删改查等 *** 作

语法:sed [选项] '[定位符]指令' 文件名 或者 命令 |sed [选项] '[定位符]指令正裂慎'

例如:sed -n '2,3p' /etc/passwd //-n 为屏蔽默认输出 ‘2p' 为打印第2到3行

常用选项:

-n //屏蔽默认输源凯出

-i //直接修改源文件

-r //支持扩展正则

定位符

1.行号定位

’3p‘ //打印第三行

’1,3p‘ //打印1到3行

’1~3‘ //打印第一行开始的步长为3的行,如1,4,举敬7行

’2,+5‘ //打印第2行开始的为5行,2,3,4,5,6

2.正则定位:

例如:sed -n '/ ^root /p' /etc/passwd //以root开头的行并且打印 /里面为正则模型/

常用指令:

p //(print) 打印

d //(delete)删除行

c //(replace)替换行

s //(substitution) 替换关键词

=://打印行号

常用指令:

i (insert) // 插入

a (append) // 追加

r (read) // 读取文件|导入文件内容

w (write) // 文件另存为|导出文件内容

你是要查找一个目录下所有文件中有某个字符串的行吗?“XXX”是你要查找的字符串吗?如果是要查找当前目乱闹隐录下所有含有“hello”的行grep ./ -nr -e "hello" >>log.txt是对的。这个确实是对的。我试了我一个弯竖文件夹同样的 *** 作就用了4G的哗厅空间。是你那个“XXX”概率太高了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/8164254.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-14
下一篇 2023-04-14

发表评论

登录后才能评论

评论列表(0条)

保存