linux 操作:如何提取文件中有且只有第5列带有字符“aaa”的行输出到新文件。

如何提取文件中有且只有第5列带有字符“aaa”的行输出到新文件。如:aaabbbcccdddeeefffbbbcccdddeeeaaafffaaacccbbbfffaaa... 如何提取文件中有且只有第5列带有字符“aaa”的行输出到新文件。
如:
aaa bbb ccc ddd eee fff
bbb ccc ddd eee aaa fff
aaa ccc bbb fff aaa eee
ccc bbb aaa eee aaa fff

按题意输出结果只有第二行
展开
 我来答
风若远去何人留
2019-05-06 · 知道合伙人互联网行家
风若远去何人留
知道合伙人互联网行家
采纳数:20412 获赞数:450132
专业C/C++软件开发

向TA提问 私信TA
展开全部
按行读取
对于每一行存成变量a
用awk输出第五列
判断第五列是否为aaa,如果条件是包含aaa那么用grep,否则直接比较就好
如果符合要求,追加a到指定文件
更多追问追答
追问
第三行的1、5列均包含aaa,但这行怎么排除?
追答
不好意思没注意到你说的有且只有
这个就比较麻烦了,一个可行的思路是,在满足第五列是aaa的基础上,对原始字符串再处理一次,用sed替换掉第一个aaa,然后得到结果用grep查找aaa,如果去掉一个aaa结果中还有aaa,那就是不符合要求的了,排除掉
比较麻烦,应该有更简单的方式
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式