df の実行にずいぶん掛かるようなので、それを1回にしました。次のようなコーディングでいかが?新谷 さんが書きました:単純計算で従来版の3倍時間がかかるっよね
コード: 全て選択
free_flash_func() { #PUPMODE 3,7,13. called every 4 seconds.
 WARNMSG=""
 # 17nov09 SIZEFREEM by shinobar
 DFM=$(df -m)
 LINERO=$(echo "$DFM" | grep ' /initrd/pup_ro1$' | tr -s ' ' )
 LINERW=$(echo "$DFM" | grep ' /initrd/pup_rw$' | tr -s ' ' )
 SIZEM=$(echo $LINERO| cut -f 2 -d ' ')
 SIZEWM=$(echo $LINERW| cut -f 2 -d ' ')
 [ $SIZEWM -lt $SIZEM ] && SIZEM=$SIZEWM
 SIZEUM=$(echo $LINERW| cut -f 3 -d ' ')
 SIZEFREEM=$(expr $SIZEM - $SIZEUM)
 #SIZEFREEM=`df -m | grep ' /initrd/pup_ro1$' | tr -s ' ' | cut -f 4 -d ' '`
 SIZETMPM=$(echo $LINERW| cut -f 4 -d ' ')