wifi连接

wifi连接
2008-07-10 14:03
#!/bin/sh

echo "this is wifi_connect para number is $#"
echo "the first para is $1"
if [ $1 == "off" ];then
        killall -9 wpa_supplicant       2>/dev/null
        exit;

fi

if [ $# -lt 3 ];then
        echo "Usage:$0 interface essid enc"
        exit;
fi

interface=$1
ssid=$2;
enc=$3
passwd=$4

echo "the ssid is $ssid,the passwd is $passwd,the enc is $enc"

if [ ${enc} == "OPEN" ];then
        echo -e "network={                                                     
                        ssid=/"$ssid/"                                         
                        key_mgmt=NONE
                }" >/etc/wpa.conf
        sync;
elif [ ${enc} == "WEP" ];then
        echo -e "network={
                        ssid=/"$ssid/"
                        key_mgmt=NONE
                        wep_key0=$passwd
                        wep_key1=$passwd
                        wep_key2=$passwd
                        wep_key3=$passwd
                        wep_tx_keyidx=0 1 2 3
                }" >/etc/wpa.conf
        sync;
elif [ ${enc} == "WEP_ASCII" ];then
        echo -e "network={
                        ssid=/"$ssid/"
                        key_mgmt=NONE
                        wep_key0=/"$passwd/"
                        wep_key1=/"$passwd/"
                        wep_key2=/"$passwd/"
                        wep_key3=/"$passwd/"
                        wep_tx_keyidx=0 1 2 3
                }" >/etc/wpa.conf
        sync;
elif [ ${enc} == "WEP_HEX" ];then
        echo -e "network={
                        ssid=/"$ssid/"
                        key_mgmt=NONE
                        wep_key0=$passwd
                        wep_key1=$passwd
                        wep_key2=$passwd
                        wep_key3=$passwd
                        wep_tx_keyidx=0 1 2 3
                }" >/etc/wpa.conf
        sync;
elif [ ${enc} == "WPA_PSK" ];then
        echo -e "network={
                        ssid=/"$ssid/"
                        proto=WPA
                        key_mgmt=WPA-PSK
                        psk=/"$passwd/"
                }" >/etc/wpa.conf
        sync;
elif [ ${enc} == "WPA2_PSK" ];then
        echo -e "network={
                        ssid=/"$ssid/"
                        proto=WPA2
                        key_mgmt=WPA-PSK
                        psk=/"$passwd/"
                }" >/etc/wpa.conf
        sync;

elif [ ${enc} == "WPA_WPA2_PSK" ];then
        echo -e "network={
                        ssid=/"$ssid/"
                        proto=WPA
                        key_mgmt=WPA-PSK
                        psk=/"$passwd/"
                }" >/etc/wpa.conf
        sync;
elif [ ${enc} == "WPA_EAP" ];then
        echo "this is WPA_EAP case"
fi

        ps >/tmp/wifi_connect.log
        nums=`cat /tmp/wifi_connect.log|grep -c "wpa_supplicant"`
        echo "the nums is $nums"
        if [ $nums -lt 1 ];then
                echo "below is to invoke wpa_supplicant"
#               wpa_supplicant -w -Dwext -c /etc/wpa.conf -i $interface -B  
                wpa_supplicant -w -Dwext -c /etc/wpa.conf -i $interface &
        else
                echo "here send a signal to wpa_supplicant"
                killall -SIGHUP wpa_supplicant
        fi

这个脚本是用来实现wifi的自动连接的,根据不同的加密方式提供不同的脚本,并最后调用wpa_supplicant来实现自动连接,当然连上后还有一些工作要做,内容如下:
#!/bin/sh
echo "this is set_ip"
if [ $# -lt 1 ];then

        echo "Usage $0 interface"
        exit

fi

ps -ef >/tmp/ps.log
num=`cat /tmp/ps.log |grep -c hci_av2mp3_demo`
if [ $num -lt 1 ];then
        if [ -e /wf/songlixin/test_case/hci_av2mp3_demo ];then
                /wf/songlixin/test_case/hci_av2mp3_demo &
        elif [ -e /songlixin/hci_av2mp3_demo ];then
                /songlixin/hci_av2mp3_demo &
        elif [ -e /usr/bin/hci_av2mp3_demo ];then
                /usr/bin/hci_av2mp3_demo &
        fi
fi
/sbin/udhcpc -q -i $1

#below is to start bluetooth    
iwpriv $1 reasso-on             
iwpriv $1 hssetpara 0x2 0xff 0xa0
iwpriv $1 tpccfg 0x01 0x00 0x05 0x0a 0x0d
iwconfig $1 power unicast               
iwconfig $1 power on  
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值