2 つの特定の行間のテキストの抽出

2 つの特定の行間のテキストの抽出

2つの特定の行の間でコマンド出力の一部を取得するには?山の例:

注文する:

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

2つの特定の行の間の出力部分を取得したい(行番号ではなく内容に基づいて)。

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

関連情報