Bruce. です。
davi writes:
> で、出力を、本当は
>
> ----- out_list.txt -----
> ビアドのローマの女たち,A.バージェス,,サンリオSF,1980
> 永遠へのパスポート,J.G.バラード,永井淳 訳,創元推理文庫,1970
> 火星の黄金仮面,O.A.クライン,,創元推理文庫,1978
> 虚空の眼,フィリップ・K・ディック,大瀧啓裕 訳,サンリオSF,
> 夢みる宝石,シオドア・スタージョン,,ハヤカワ文庫,1979
> 創世記機械,,山高昭 訳,創元推理文庫,1981
> --------------------------
>
なにもawkでやらんでもという気がしないでもありませんが、こんなんでいかーすか?
#delete array は処理系を選びますが POSIX compliant なら大丈夫なはず
BEGIN {
FS = ","
getline
entry["題名"] = prev = $1
#entry[$2] = $3
}
#NR == 1 {
# entry["題名"] = prev = $1
# entry[$2] = $3
# next
#}
$1 != prev {
put_record()
delete entry
entry["題名"] = prev = $1
#entry[$2] = $3
#next
}
{
entry[$2] = $3
}
END {
put_record()
}
function put_record() {
printf "%s,%s,%s,%s,%s\n",
entry["題名"],
entry["著者"],
entry["訳者"],
entry["出版社"],
entry["出版年"];
}