sed在一行中打印多个匹配项

庇护

我有一个文件,包括一些字符串和变量,例如:

 ${cat.mouse.dog}
 bird://localhost:${xfire.port}/${plfservice.url}
 bird://localhost:${xfire.port}/${spkservice.synch.url}
 bird://localhost:${xfire.port}/${spkservice.asynch.request.url}
 ${soabp.protocol}://${hpc.reward113.host}:${hpc.reward113.port}
${configtool.store.folder}/config/hpctemplates.htb

我想打印“ {}”之间的所有字符串。在某些行中,有不止一个这样的字符串,在这种情况下,它们应保留在同一行中。输出应为:

cat.mouse.dog
xfire.port plfservice.url
xfire.port spkservice.synch.url
xfire.port spkservice.asynch.request.url
soabp.protocol hpc.reward113.host hpc.reward113.port
configtool.store.folder

我尝试了以下方法:

sed -n 's/.*{//;s/}.*//p' filename

但它仅打印每行的最后一次出现。与原始文件一样,如何获取所有出现在同一行中的事件?

橄榄

如果您不反对awk,则可以尝试以下操作:

 awk -v RS='{|}' -v ORS=' ' '/\n/{printf "\n"} (NR+1)%2' file

记录分隔符RS设置为{}这会将所需的模式与其余的模式分开。

然后,该脚本使用该语句显示2条记录中的1条记录(NR+1)%2

为了使对齐保持预期的效果,将输出记录分隔符设置为一个空格ORS=' ',每次遇到换行符时,此语句都会/\n/{printf "\n"}插入一个。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用grep或sed在同一行中提取多个匹配项

来自分类Dev

使用sed打印每个匹配模式的第一行

来自分类Dev

使用sed在模式匹配后打印前一行?

来自分类Dev

当一行与模式“ b”匹配时,使用sed打印最后一行以与模式“ a”匹配

来自分类Dev

如何在AWK或SED中在匹配的RegEx下方打印一行

来自分类Dev

在同一行中具有多个匹配项的Pandas value_counts()

来自分类Dev

grep 或 sed 可以只显示与一行中的多个搜索模式匹配的单词吗?

来自分类Dev

对于搜索所在的每一行,打印“找到匹配项”;如果整个文件中没有搜索到,则打印“找不到匹配项”

来自分类Dev

如何在同一行中打印匹配的行?

来自分类Dev

findstr在一行中显示匹配项

来自分类Dev

使用sed替换文件中的第一个匹配项-为什么要打印后续行?

来自分类Dev

仅当下一行不包含特定匹配项时才打印一行

来自分类Dev

AWK:如何精确匹配并在同一行中的两个关键字之间打印多个单词

来自分类Dev

在一行中打印多个char变量?

来自分类Dev

在同一行中打印多个awk

来自分类Dev

如何在一行代码中打印多个变量?

来自分类Dev

如何在一行中打印多个herf链接?

来自分类Dev

在一行中打印多个ng-repeat元素

来自分类Dev

如何在shell中在匹配模式的那一行上方打印一行?

来自分类Dev

使用条件匹配一行中的多个模式

来自分类Dev

使用grep将多个匹配项放在一行上到新行

来自分类Dev

sed与下一行不匹配

来自分类Dev

sed以匹配多个匹配项中的第一个模式

来自分类常见问题

Java Regex:在同一行上捕获多个匹配项

来自分类Dev

合并具有多个匹配项的数据帧时,仅选择第一行

来自分类Dev

使用正则表达式在同一行上查找多个匹配项

来自分类Dev

一行中有多个匹配项的文本行操作

来自分类Dev

如何从具有多个定界符的同一行打印匹配值?

来自分类Dev

用grep匹配一行中的所有匹配项

Related 相关文章

  1. 1

    如何使用grep或sed在同一行中提取多个匹配项

  2. 2

    使用sed打印每个匹配模式的第一行

  3. 3

    使用sed在模式匹配后打印前一行?

  4. 4

    当一行与模式“ b”匹配时,使用sed打印最后一行以与模式“ a”匹配

  5. 5

    如何在AWK或SED中在匹配的RegEx下方打印一行

  6. 6

    在同一行中具有多个匹配项的Pandas value_counts()

  7. 7

    grep 或 sed 可以只显示与一行中的多个搜索模式匹配的单词吗?

  8. 8

    对于搜索所在的每一行,打印“找到匹配项”;如果整个文件中没有搜索到,则打印“找不到匹配项”

  9. 9

    如何在同一行中打印匹配的行?

  10. 10

    findstr在一行中显示匹配项

  11. 11

    使用sed替换文件中的第一个匹配项-为什么要打印后续行?

  12. 12

    仅当下一行不包含特定匹配项时才打印一行

  13. 13

    AWK:如何精确匹配并在同一行中的两个关键字之间打印多个单词

  14. 14

    在一行中打印多个char变量?

  15. 15

    在同一行中打印多个awk

  16. 16

    如何在一行代码中打印多个变量?

  17. 17

    如何在一行中打印多个herf链接?

  18. 18

    在一行中打印多个ng-repeat元素

  19. 19

    如何在shell中在匹配模式的那一行上方打印一行?

  20. 20

    使用条件匹配一行中的多个模式

  21. 21

    使用grep将多个匹配项放在一行上到新行

  22. 22

    sed与下一行不匹配

  23. 23

    sed以匹配多个匹配项中的第一个模式

  24. 24

    Java Regex:在同一行上捕获多个匹配项

  25. 25

    合并具有多个匹配项的数据帧时,仅选择第一行

  26. 26

    使用正则表达式在同一行上查找多个匹配项

  27. 27

    一行中有多个匹配项的文本行操作

  28. 28

    如何从具有多个定界符的同一行打印匹配值?

  29. 29

    用grep匹配一行中的所有匹配项

热门标签

归档