linux shell命令求解。累加行数的命令。
有如下一个linux中的文本文件a.txt,内容如下1|a12|a23|a34|a41|b12|b21|c12|c23|c34|c45|c51|d12|d23|d31|e...
有如下一个linux中的文本文件a.txt,内容如下
1|a1
2|a2
3|a3
4|a4
1|b1
2|b2
1|c1
2|c2
3|c3
4|c4
5|c5
1|d1
2|d2
3|d3
1|e1
2|e2
1|f1
2|f2
3|f3
我想输入某个查询内容,程序能够自动计算出某类内容的行数,并得到类似如下的结果:
如果输入查询内容"d1",输出“3”行;
或输入查询内容"b1",输出“2”行;
或输入查询内容"e1",输出“2”行;
或输入查询内容"c1",输出“5”行;
也就是说,输入查询内容后,linux命令进行扫描文本,遇到下一个“1|”后,结束扫描行数,并累加行数。 展开
1|a1
2|a2
3|a3
4|a4
1|b1
2|b2
1|c1
2|c2
3|c3
4|c4
5|c5
1|d1
2|d2
3|d3
1|e1
2|e2
1|f1
2|f2
3|f3
我想输入某个查询内容,程序能够自动计算出某类内容的行数,并得到类似如下的结果:
如果输入查询内容"d1",输出“3”行;
或输入查询内容"b1",输出“2”行;
或输入查询内容"e1",输出“2”行;
或输入查询内容"c1",输出“5”行;
也就是说,输入查询内容后,linux命令进行扫描文本,遇到下一个“1|”后,结束扫描行数,并累加行数。 展开
展开全部
[root@localhost shell]# cat a.txt | grep d | wc -l
3
[root@localhost shell]# cat a.txt | grep b | wc -l
2
[root@localhost shell]# cat a.txt | grep e | wc -l
2
[root@localhost shell]# cat a.txt | grep c | wc -l
5
3
[root@localhost shell]# cat a.txt | grep b | wc -l
2
[root@localhost shell]# cat a.txt | grep e | wc -l
2
[root@localhost shell]# cat a.txt | grep c | wc -l
5
追问
如果是被查询的字符串是不规则的,那应该如何写?我想利用“1|”来判断,因为“1|”是关键字。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询