シェルワンライナー160本ノック問題62
問題62 休日の突き合わせ
問題のファイルは
https://github.com/shellgei/shellgei160
からダウンロードできる。
日付に祝日名を追記する問題だった。
解答例は
nkf -wLux syukujitsu.csv | tail -n +2 | teip -d, -f 1 -- date -f- '+%Y-%m-%d' | awk -F- '$1>=2019&&$1<2022' | cat - <(dateutils.dseq 2019-01-01 2021-12-31 | sed 's/$/,@/') |sort -r | uniq -w10 | tac
となる。join をつかわず sort と uniq でうまく処理をしている。teip のコマンドが sudo apt install で入れられないようなのでちょっとめんどくさかった。teip にくっついている date コマンドではおそらく - で標準入力からデータを受け取るようにしているのだろう。マニュアルにはっきり書いていたわけではないけどたぶんそうだと思う。