入力を複数の異なる出力ファイルにリダイレクトする

入力を複数の異なる出力ファイルにリダイレクトする

次の入力ファイルがあります。

<event>
foo
bar
</event>
<event>
random text
</event>

各ファイルに<event>...</event>

を使用してこれを試しましたが、awk出力を別の出力ファイルにリダイレクトする方法はわかりません。可能ですか?それともPythonのようなものに頼るべきですか?

答え1

言い換えればアッ

awk '
    /<event>/{
        start=1
        n++
    }
    start{
        print >"output" n
    }
    /<\/event>/{
        start=0
        close("output" n)
    }
    ' input.file

関連情報