使用awk打印从匹配到文件结尾的行

fedorqui'停止伤害'

从匹配行到文件结尾的文件中打印行中,我了解到可以0在范围表达式中使用awk来匹配直到文件结尾:

awk '/matched/,0' file

但是,今天我开始玩这个游戏0,发现它也可以使用:

awk '/matched/,/!./' file

我猜0是可行的,因为在范围表达式/regex1/,/regex2/中打印了行,直到regex2计算结果为True。而且由于0评估为False,因此永远不会发生,最终将打印所有行。这是正确的吗?

但是,/!./我可以想象这可以一直工作到找到没有任何字符的行,就像我们说的那样awk '/matched/,!NF'但事实并非如此:相反,它始终评估为False。是什么原因呢?

例子

$ cat a
1
matched
2

3
4
end

两者awk '/matched/,/!./' aawk '/matched/,0' a返回:

matched
2

3
4
end

awk '/matched/,!NF' a返回:

匹配的
2

阿努巴瓦

您在错误的地方感到惊叹。像这样将其保留在正则表达式之外以取消匹配

awk '/matched/,!/./' a
匹配的
2


您的正则表达式/!./匹配的是文字,!后跟任何字符。

如果您的文件是这样的:

cat a
1
matched
2

3
!4
end

然后

awk '/matched/,/!./' a
matched
2

3
!4

和:

awk '/matched/,!/./' a
匹配的
2

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何使用grep / awk / unix将一个文件中的所有行匹配到另一个文件中,即使它们是重复的

来自分类Dev

使用awk打印文件中的重复行

来自分类Dev

匹配模式并使用awk或grep打印文件中的相应列

来自分类Dev

根据第一列的字符(使用awk)将行分配到文件

来自分类Dev

awk比较2个文件,打印匹配行和不匹配行

来自分类Dev

awk比较2个文件,打印匹配行和不匹配行

来自分类Dev

使用AWK打印匹配的图案

来自分类Dev

从开始匹配模式的最后一个匹配到结束模式从awk打印

来自分类Dev

从开始匹配模式的最后一个匹配到结束模式从awk打印

来自分类Dev

如何使用awk将不包括第一列的csv文件打印到结尾

来自分类Dev

如何使用awk将不包括第一列的csv文件打印到结尾

来自分类Dev

使用 fgetc() 打印以“?”结尾的文件字符 象征

来自分类Dev

使用Awk查找以.c结尾的文件

来自分类Dev

awk:匹配文件末尾后打印行

来自分类Dev

打印匹配 awk 脚本的文件名

来自分类Dev

如何使用awk打印文件的倒数第二行

来自分类Dev

使用awk在文件中打印空白行

来自分类Dev

如何打印匹配的字符串以php中的文件结尾

来自分类Dev

awk精确变量匹配,打印剩余的行

来自分类Dev

awk如果匹配则向后打印2行

来自分类Dev

使用参考文件进行搜索并打印匹配行

来自分类Dev

如何使用awk或sed删除以冒号结尾的文件中的所有行?

来自分类Dev

Awk,根据不同文件的行匹配方式打印某些列

来自分类Dev

awk:打印与文件中模式不匹配的行,查看特定列

来自分类Dev

使用c &&!-c打印Awk匹配行和后N行

来自分类Dev

grep / pcregrep / sed / awk在最后一次匹配到文件末尾之后的数据

来自分类Dev

如果列与另一个文件匹配,则打印匹配的每一行(awk / grep)

来自分类Dev

使用 awk 行匹配模式

来自分类Dev

如何比较两个文件的两列并使用awk打印不匹配的模式

Related 相关文章

  1. 1

    如何使用grep / awk / unix将一个文件中的所有行匹配到另一个文件中,即使它们是重复的

  2. 2

    使用awk打印文件中的重复行

  3. 3

    匹配模式并使用awk或grep打印文件中的相应列

  4. 4

    根据第一列的字符(使用awk)将行分配到文件

  5. 5

    awk比较2个文件,打印匹配行和不匹配行

  6. 6

    awk比较2个文件,打印匹配行和不匹配行

  7. 7

    使用AWK打印匹配的图案

  8. 8

    从开始匹配模式的最后一个匹配到结束模式从awk打印

  9. 9

    从开始匹配模式的最后一个匹配到结束模式从awk打印

  10. 10

    如何使用awk将不包括第一列的csv文件打印到结尾

  11. 11

    如何使用awk将不包括第一列的csv文件打印到结尾

  12. 12

    使用 fgetc() 打印以“?”结尾的文件字符 象征

  13. 13

    使用Awk查找以.c结尾的文件

  14. 14

    awk:匹配文件末尾后打印行

  15. 15

    打印匹配 awk 脚本的文件名

  16. 16

    如何使用awk打印文件的倒数第二行

  17. 17

    使用awk在文件中打印空白行

  18. 18

    如何打印匹配的字符串以php中的文件结尾

  19. 19

    awk精确变量匹配,打印剩余的行

  20. 20

    awk如果匹配则向后打印2行

  21. 21

    使用参考文件进行搜索并打印匹配行

  22. 22

    如何使用awk或sed删除以冒号结尾的文件中的所有行?

  23. 23

    Awk,根据不同文件的行匹配方式打印某些列

  24. 24

    awk:打印与文件中模式不匹配的行,查看特定列

  25. 25

    使用c &&!-c打印Awk匹配行和后N行

  26. 26

    grep / pcregrep / sed / awk在最后一次匹配到文件末尾之后的数据

  27. 27

    如果列与另一个文件匹配,则打印匹配的每一行(awk / grep)

  28. 28

    使用 awk 行匹配模式

  29. 29

    如何比较两个文件的两列并使用awk打印不匹配的模式

热门标签

归档