使用awk或sed,如何获取两个参数之间的内容,参数在一个文件中多次出现
例如,文件内容
Entering AAA
12
Entering BBB
13
Leaving AAA
14
Leaving AAA
15
Leaving AAA
16
Leaving BBB
目前我正在使用
cat 1.txt |sed -n '/Entering AAA/,/Leaving AAA/ p'
有了这个,我得到了第一次出现“进入 AAA”和第一次出现“离开 AAA”之间的内容
IE
Entering AAA
12
Entering BBB
13
Leaving AAA
但是,我想要从“进入 AAA”的 第一次出现 到“离开 AAA”的 最后一次出现 的内容
预期输出:
Entering AAA
12
Entering BBB
13
Leaving AAA
14
Leaving AAA
15
Leaving AAA
请帮忙。
最佳答案
简短的 tac
+ awk
技巧:
tac file | awk '/Leaving AAA/,/Entering AAA/' | tac
输出:
Entering AAA
12
Entering BBB
13
Leaving AAA
14
Leaving AAA
15
Leaving AAA
关于shell - 获取两个参数之间的内容,参数在一个文件中多次出现,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/48684569/