1*4882a593Smuzhiyun#!/sbin/sh 2*4882a593Smuzhiyun 3*4882a593Smuzhiyun#RESULT_FILE="/data/udisk_capacity.txt" 4*4882a593Smuzhiyun#LOG_FILE="/data/udisk.log" 5*4882a593Smuzhiyun#source send_cmd_pipe.sh 6*4882a593Smuzhiyun 7*4882a593Smuzhiyun#while true; do 8*4882a593Smuzhiyun for nr in a b c d e f g h i j k l m n o p q r s t u v w x y z; do 9*4882a593Smuzhiyun udisk="/dev/block/sd$nr" 10*4882a593Smuzhiyun part=$udisk 11*4882a593Smuzhiyun 12*4882a593Smuzhiyun #echo "searching disk ..." >> LOG_FILE 13*4882a593Smuzhiyun while true; do 14*4882a593Smuzhiyun if [ -b "$udisk" ]; then 15*4882a593Smuzhiyun busybox sleep 1 16*4882a593Smuzhiyun if [ -b "$udisk" ]; then 17*4882a593Smuzhiyun echo "udisk insert" 18*4882a593Smuzhiyun break; 19*4882a593Smuzhiyun fi 20*4882a593Smuzhiyun else 21*4882a593Smuzhiyun busybox sleep 1 22*4882a593Smuzhiyun fi 23*4882a593Smuzhiyun done 24*4882a593Smuzhiyun 25*4882a593Smuzhiyun if [ ! -d "/tmp/udisk" ]; then 26*4882a593Smuzhiyun busybox mkdir -p /tmp/udisk 27*4882a593Smuzhiyun fi 28*4882a593Smuzhiyun 29*4882a593Smuzhiyun #echo "mounting disk ..." >> LOG_FILE 30*4882a593Smuzhiyun busybox mount -t vfat $udisk /tmp/udisk 31*4882a593Smuzhiyun if [ $? -ne 0 ]; then 32*4882a593Smuzhiyun for num in 1 2 3 4 5 6;do 33*4882a593Smuzhiyun udiskp=$udisk"$num" 34*4882a593Smuzhiyun busybox mount -t vfat $udiskp /tmp/udisk 35*4882a593Smuzhiyun if [ $? -ne 0 ]; then 36*4882a593Smuzhiyun echo "udisk mount failed" >> LOG_FILE 37*4882a593Smuzhiyun #SEND_CMD_PIPE_FAIL $3 38*4882a593Smuzhiyun #busybox sleep 3 39*4882a593Smuzhiyun # goto for nr in ... 40*4882a593Smuzhiyun # detect next plugin, the devno will changed 41*4882a593Smuzhiyun #continue 2 42*4882a593Smuzhiyun else 43*4882a593Smuzhiyun part=$udiskp 44*4882a593Smuzhiyun break 45*4882a593Smuzhiyun fi 46*4882a593Smuzhiyun done 47*4882a593Smuzhiyun else 48*4882a593Smuzhiyun break 49*4882a593Smuzhiyun fi 50*4882a593Smuzhiyun 51*4882a593Smuzhiyun if [ $part = $udiskp ];then 52*4882a593Smuzhiyun break 53*4882a593Smuzhiyun fi 54*4882a593Smuzhiyun done 55*4882a593Smuzhiyun 56*4882a593Smuzhiyun capacity=`busybox df | busybox grep /tmp/udisk | busybox awk '{printf $2}'` 57*4882a593Smuzhiyun #echo "$part: $capacity" >> LOG_FILE 58*4882a593Smuzhiyun 59*4882a593Smuzhiyun busybox umount /tmp/udisk 60*4882a593Smuzhiyun #SEND_CMD_PIPE_OK_EX $3 $capacity 61*4882a593Smuzhiyun 62*4882a593Smuzhiyun echo $capacity > /data/udisk_capacity.txt 63*4882a593Smuzhiyun break 64*4882a593Smuzhiyun 65*4882a593Smuzhiyun# while true; do 66*4882a593Smuzhiyun# if [ -b "$udisk" ]; then 67*4882a593Smuzhiyun# echo "please remove udisk" 68*4882a593Smuzhiyun# busybox sleep 1 69*4882a593Smuzhiyun# else 70*4882a593Smuzhiyun# echo "udisk removed" 71*4882a593Smuzhiyun# break 72*4882a593Smuzhiyun# fi 73*4882a593Smuzhiyun# done 74*4882a593Smuzhiyun#done 75*4882a593Smuzhiyun 76