このawkスクリプトを使用して、テキストファイルから重複した行を削除します。
awk '!x[$0]++'
しかし、どの行で実行されるかを指定したいと思います。
10000個の重複項目があるかもしれませんが、10020~10030行の重複項目だけを削除したいと思います。
私の場合は24〜655でした。私ができる言葉(またはそのような言葉)であれば、{$24, $655}
より簡単です。しかし、この場合、行を指定する方法がわかりません。重要な場合は、awkバージョン20070501を使用しています。
答え1
次のことができます。
awk -v low=24 -v high=655 'NR >= low && NR <= high{if (!a[$0]++) print; next};{print}' file
またはより良い
awk -v low=100 -v high=200 'NR < low || NR > high || !a[$0]++' test.file