次の内容のファイルがあります:
xyz[0]
xyz[1]
xyz[2]
xyz[3]
abc[0]
abc[1]
abc[2]
各値は改行で区切られます。角括弧内の数字が偶数か奇数かに基づいて、2 つの異なるファイルに分割します。
答え1
Awk を使用して、文字で分割し[
、]
2 番目のフィールドを剰余除算します。
$ awk -F'[][]' '{f = $2%2 ? "odd" : "even"; print > f}' file
$ head odd even
==> odd <==
xyz[1]
xyz[3]
abc[1]
==> even <==
xyz[0]
xyz[2]
abc[0]
abc[2]