Linuxで列の情報に基づいてファイルを分割する方法

Linuxで列の情報に基づいてファイルを分割する方法

2番目の列の値が特定の値より小さい行を分離したいと思います。

入力例:

id1 19501112
id2 19831207
id3 20001212
id6 20000101
id10 20061213
id11 20081212
id12 20100109
id13 20101218
id14 20101212
id15 20111111
id16 20150919
id20 20141415

2番目のフィールドの値が20100101より小さい行を抽出したいと思います。だから私の出力は次のようになります

id1 19501112
id2 19831207
id3 20001212
id6 20000101
id10 20061213
id11 20081212

どんな提案がありますか?

ベストアンサー1

$ awk '$2<20100101' file
id1 19501112
id2 19831207
1d3 20001212
id6 20000101
id10 20061213
id11 20081212

一般的な awk プログラムは、次のコマンドで構成されます。

condition { action }

私たちの例では状況2 番目の列は 20100101 より小さいです。これ状況$2<20100101私たちが提供していないので、.siと書くのに十分合理的です。行動、awk は行を印刷する基本的な操作を行います。

おすすめ記事