如何获取两个特定行之间的命令输出部分?一个虚拟示例:
命令:
git for-each-ref --sort='*authordate' --format='%(tag)' refs/tags | grep -v '^$'
输出:
0.1.0
0.2.0
1.0.0
1.0.1
1.0.2
1.1.0
1.2.0
1.2.1
1.3.0
1.4.0
1.4.1
我想获取两个特定行之间的输出部分(不是基于行号,而是基于内容):
0.1.0
0.2.0
1.0.0
1.0.1
1.0.2
答案1
您可以通过管道输出到awk
:
$ ... | awk '/0\.1\.0/,/1\.0\.2/'
0.1.0
0.2.0
1.0.0
1.0.1
1.0.2
答案2
你可以将它通过管道传输到sed
:
.... | sed -n "/0.1.0/,/1.0.2/p" YourFile