次の形式のファイルがたくさんあります。
A.txt :
some text1
more text2
XXX
more text
....
XXX
.
.
XXX
still more text
text again
各ファイルには、.で始まる行が少なくとも 3 行ありXXX
ます。ここで、各ファイルについてA.txt
、3番目に出現するまでのすべての行を書き込みたいXXX
(上記の例では、前の行までstill more text
)を fileに書き込みますA_modified.txt
。
これをbashで実行したいのですがgrep -n -m 3 -w "^XXX$" * | cut -d: -f2
、各ファイルで対応する行番号を取得することを思いつきました。
head
これらの行番号と一緒に使用して、必要な出力を生成することは可能ですか?
PS: 単純な python スクリプトでうまくいくことはわかっていますが、特に理由もなくこの bash でやろうとしています。