固有のチェックサムを持つ行

固有のチェックサムを持つ行

長さnの行を含むファイルAがあります。 Aの各行に対して、長さnの行とそのキーを出力するプログラムがあります。プログラムは、Aの各行のキーシーケンスをファイルBに書き込むか、Aの各行についてstdoutに書き込むことができます。

個々のキーが重複しないように、Aのすべての行を取得する必要があります。これを達成する最も効率的な方法は何ですか? -kオプションがありますが、正確に私が望むことをしないようです。

編集する。コメントの説明。

A に次の行が含まれているとします。

foo
bar 
baz

2番目のプログラムは、次の行の主な出力を計算します。

xxx
yyy
xxx

1行目はfooの出力、2行目はbarの出力、3行目はbazの出力です。

これで正しい出力の1つは次のようになります。

foo
bar

ベストアンサー1

あなたが指定したように(しかしあなたの質問に対するwurtelのコメントを考慮してください):

generate_keys A > B   # adjust this call however that program is defined to work

awk '
  NR==FNR { a[NR]=$1 ; next }
  !b[$1]++ { print a[FNR] }
' A B

おすすめ記事