自动测试wifi开机是否连接

#!/bin/bash

device="2230763A00357"
ipstr="192.168.1.1"
count=0
totalcount=1500

function adbdevice
{
    count1=0
    totalcount1=60

    while [ $count1 -lt $totalcount1 ]; do
        cmd=$(adb devices | grep $device)
        echo $cmd    
        current_time=$(date +%F-%H:%M:%S)
        if [ "$cmd" != "" ]; then
           echo "adb devices OK" $count1 $current_time
           return 1
        else
           sleep 3
           echo "adb devices fail" $count1 $current_time
           count1=$(($count1+1))
        fi
    done
    return 0
}

function iprl
{
    count2=0
    totalcount2=60
    
    while [ $count2 -lt $totalcount2 ]; do
        cmd=$(adb shell ip r l | grep $ipstr)
        echo $cmd
        current_time=$(date +%F-%H:%M:%S)
        if [ "$cmd" != "" ]; then
            #adb shell pkill logcat
            echo -e "ip r l OK" $count2 $current_time "\n"
            return 1
        else        
            sleep 3
            echo -e "ip r l fail" $count2 $current_time "\n"
            count2=$(($count2+1))
        fi
    done
    return 0
}

while [ $count -lt $totalcount ]; do
    current_time=$(date +%F-%H:%M:%S)
    echo "count=$count" $current_time

    adb reboot
    sleep 60
    
    adbdevice
    
    if [ $? -eq 0 ]; then
        echo "adb devices fail"
        break
    fi
    
    adb root

    adbdevice
    
    if [ $? -eq 0 ]; then
        echo "adb devices fail"
        break
    fi
    
    adb logcat -v threadtime > log.txt &
    logcatpid=$(adb shell pidof logcat)
    
    iprl
 
    if [ $? -eq 1 ]; then
        adb shell pkill logcat
    else
        adb shell dmesg > ./dmesg.txt
        sleep 60
        adb shell pkill logcat
        break
    fi

    count=$(($count+1))
done

if [ $count -eq $totalcount ]; then
   echo "test passed"
else
   echo "test fail"
fi

你可能感兴趣的:(Linux,自动测试wifi开机是否连接)