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