最初の項目を除くすべての行を削除

最初の項目を除くすべての行を削除

スペースで区切られたテキストファイルが与えられたら、最初の列でパターンを見つけます。見つかった場合は、その行の最初の項目を保持し、残りの項目を削除します。

入力(モード=1234):

1234    1111    2222
5678    3333    4444
1234    5678    9012
5678    1234    5678
1234    9786    5432

予想出力:

1234    1111    2222
5678    3333    4444
5678    1234    5678

ベストアンサー1

したがって、最初のフィールドが指定された値ではないすべての行を印刷し、一致する最初の行を印刷しようとします。

awk -vF="$1" '{ if ($1 != F) { print; } else {if (!seen) { print ; seen=1}}}'

seenawk変数(この場合)の初期値は0です。

おすすめ記事