找回密码
 注册

手机号码,快捷登录

手机号码,快捷登录

查看: 3010|回复: 7

[求助] 大神来,关于grep的一个问题

[复制链接]
发表于 2016-5-22 23:28:35 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?注册

×
在一个文档AA里面有如下内容:
a...
X(未知)
...
b...
c...
d...

想要的结果是通过grep 同时得到a行,a的下一行和b行的内容.或者其中的指令也可以。
谢谢
发表于 2016-5-23 09:02:56 | 显示全部楼层
感觉可以用grep的-A option取a X b c行,然后再-v删掉c行
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-5-23 11:06:54 | 显示全部楼层
回复 2# 阎浮提


    c行的内容是未知的,使用grep -v 貌似不可行,

有没有grep可以并行处理的option, 两个grep同时进行,第一个grep带-A参数,第二个不带, 而且两个grep出来的结果还要合并在一起。

我想完成的功能是,
如果grep到AAA 就把AAA行和AAA下一行的内容保留下来,
如果grep到BBB 就仅仅把BBB的内容保留下来

thanks,
回复 支持 反对

使用道具 举报

发表于 2016-5-23 14:31:33 | 显示全部楼层
回复 支持 反对

使用道具 举报

发表于 2016-6-8 17:40:35 | 显示全部楼层
这个问题要不我来试试吧。
首先你已经限定死了,是想用grep来做,而grep是用来查找关键字的,分两步,第一你想找a行和a行的下一行,第二你还想找出c行,只能一个个的来。
1. 首先a行你肯定要找出哪个关键字的,暂且定为xxoo,那么就是grep -A1 "xxoo" YourFileName;
2. 所以想找出c行,只能重新grep,如 grep "ooxx" YourFileName.
当然你还想知道行号的话就是加参数-n。
实在不行,百度一下,或者直接命令行man grep,查找一下帮助。
回复 支持 反对

使用道具 举报

发表于 2016-6-13 17:35:20 | 显示全部楼层
可以用awk功能更加强大
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-6-15 17:04:06 | 显示全部楼层
回复 5# knowhow1268


    谢谢 , 嘻嘻 搞定了
grep -n -A 1 a > test.log
grep -n c  >> test.log

sort test.log

done.
回复 支持 反对

使用道具 举报

发表于 2018-1-19 01:02:09 | 显示全部楼层
學習了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

关闭

站长推荐上一条 /1 下一条

QQ|手机版|小黑屋|关于我们|联系我们|隐私声明|EETOP 创芯网 ( 京ICP备:10050787号 京公网安备:11010502037710 )

GMT+8, 2025-8-6 22:11 , Processed in 0.032587 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表