grep 更改行后跟一个变量

use*_*991 2 grep

我有一个以下形式的文件(使用“-”作为分隔符),我想仅在分隔符后面找到数字的外观。我想这是 grep '-\n' 和 $number 的串联,但我找不到正确的方法。谢谢..

1400
2
132
342
-
76567
1
1234
-
87
2
1400
54
-
Run Code Online (Sandbox Code Playgroud)

jay*_*ngh 5

要在分隔符之前查找变量:

使用awk

$ awk '/!!!!!!!!!!!/{print num}{num=$0}' inputFile
342
1234
54
Run Code Online (Sandbox Code Playgroud)

gnu-awk

$ gawk 'NF && $0=$NF' RS='[!]+'  inputFile
342
1234
54
Run Code Online (Sandbox Code Playgroud)

在分隔符后查找变量:

使用awk

$ awk '/!!!!!!!!!!!/{if(getline) print $0}' inputFile
76567
87
Run Code Online (Sandbox Code Playgroud)

gnu-awk

$ gawk 'NR>1 && $0=$1' RS='[!]+'  inputFile
76567
87
Run Code Online (Sandbox Code Playgroud)