首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >计算文件中两个字符串之间匹配的行数。

计算文件中两个字符串之间匹配的行数。
EN

Stack Overflow用户
提问于 2018-05-28 21:38:25
回答 1查看 51关注 0票数 1

我有个挑战。我有一条短信:

代码语言:javascript
复制
characteristic "type"
   value "A"
   value "B"
   value "C" 
   default-value "B" 
exit 
characteristic "active"
   value "no"
   value "yes"
   default-value "no" 
exit
characteristic "traffic"
   value "disabled" 
   value "enabled"
   default-value "enabled"
exit
characteristic "quota" 
   value "enabled"
   default-value "disabled"
exit
characteristic "redirect"
   value "disabled"
   value "enabled"
   default-value "disabled"
exit

我想知道在“特性”和“退出”之间有多少次是“值”。所以,我希望是这样的:

代码语言:javascript
复制
3
2
2
1
2

我试着使用sed和grep,但我无法得到sed返回'-n -e‘/^特点/、/^exit/ p’的第n位。我相信bash不需要做很多事情就能做到。

谢谢你的帮助。

EN

回答 1

Stack Overflow用户

发布于 2018-05-28 21:58:18

我想说:

代码语言:javascript
复制
awk '$1 == "characteristic" { ctr = 0 } $1 == "exit" { print ctr } $1 == "value" { ++ctr }' filename

很简单:

代码语言:javascript
复制
$1 == "characteristic" { ctr = 0 }  # Start of a new section: reset counter
$1 == "exit" { print ctr }          # end of section: print counter
$1 == "value" { ++ctr }             # value line: increase counter
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50573665

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档