rec_radiko.shを使用して定期的に番組を録音する(MacをSleepしない場合)
rec_radiko.shでradikoの番組を毎週録音する場合は以下のスクリプトを作って実行する。
なおこれはMacをSleepしないで使用している場合に有効。
エディタでmyprogram.txtというファイルを作成し、録音する曜日、録音開始時間、チャンネル、録音時間(分)をカンマ“,”で区切って記載する。
記載例
Mon,0015,TBS,30 Tue,0330,QRR,60 Wed,0645,LFR,90 Thu,0900,FMJ,120 Fri,1220,FMT,150 Sat,1540,JORF,180 Sun,1800,NACK5,210
ファイルを準備したら以下のスクリプトを作成し実行パーミッションをつけて実行する。
#!/bin/sh # initialize # LANG=C;export LANG compath=`pwd` # set radio program # filename="myprogram.txt" IFS=$'\n' PROG=(`cat ${filename}|sed -e 's/ //g'` ) while true do for i in ${PROG[@]}; do RECWEEK=`echo $i|cut -d, -f 1` RECTIME=`echo $i|cut -d, -f 2` if [ "$RECWEEK" = "`date|cut -d" " -f 1`" ] && [ "$RECTIME" = `date "+%H%M"` ]; then RECRCHN=`echo $i|cut -d, -f 3` RECTLEN=`echo $i|cut -d, -f 4` let RecSec=$RECTLEN*60 $compath/rec_radiko.sh -o $compath/downloads/ -t $RecSec $RECRCHN fi done done
スクリプトは先頭でmyprogram.txtを配列PROGに読み込み、dateコマンドで曜日と録音開始時間が一致するまでループし、一致したらrec_radiko.shを実行している。
ターミナルを終了させても継続するようにscreenを立ち上げて実行するのがよいだろう。