いろんなbibファイルを一つにマージする
弊学の図書館サイトではbibファイルがダウンロードできるのですが,texファイルから参考文献参照するのに一つのbibファイルにまとめたくて,でも全部手でコピペして一つのファイルに書き足していくのが面倒だったので喰らえ!俺のワンライナー!
歪んだ育ち方をしてきたのでワンライナー以外のシェルの書き方を知らない
— あおさ (@aosa4054) 2019年11月29日
for bib in $(ls references | grep .bib$);do path="references/$bib";key=`echo $bib | sed 's/\.bib//'`;cat $path | sed -e "/^abstract/d" -e "s/^\(@.*\){.*\,/\1{$key,/" -e "s/\_/\\\\_/g"; done | awk '{print}{system("")}' > references.bib
forを使ってる時点でワンライナーじゃねえ
referencesディレクトリにbib全部突っ込んでこれで一つのファイルにまとまるね,keyはファイル名だしわかりやすいね.めでたしめでたし.
※当方TeXドシロにつき,これじゃ〇〇のとき使えねえじゃんとかあると思いますが優しくしてクレメンス