yaotti's diary

QiitaやKobito、Qiita:Teamを作っています。Software is Eating the World

clmemoの内容をメールに投げてくれるシェルスクリプト

Emacsのclmemoを使って調べたことや思ったことをどんどんメモしているけれど,見返す頻度が少ないのでメールで飛ばすようにした.
lazyな人間にはメモを能動的に,習慣的に見返すなんて無理なので強制的に見せる.


clmemoについてはここ.
楽天が運営するポータルサイト : 【インフォシーク】Infoseek

#!/bin/sh
clmemo="/path/to/your/clmemo/clmemo.txt" # clmemoへのパス
day=7 #何日分を送るか
address="hoge@example.com" #mail address
subject="clmemfo[weekly]" #subject
day=`expr $day + 1`
line=`grep -n '[0-9]\{4\}-[0-9]\{1,2\}-[0-9]\{2\}' $clmemo | sed -e 's/\(.*\):.*/\1/' | sed -n "${day}p"`
line=`expr $line - 1`

mail -s $subject $address << BODY
`head -n $line $clmemo`
BODY
exit

これをcronで毎日12時とか週に1回動かすよう設定すればよさげ.

dayとかlineのところが汚いのでまとめたいけどよくわからない.
`expr \`grep ... \` -1`とかやっても無理だったし.