linux版校园网认证程序在执行之后,会极大地占用计算机资源。
(可能是内存泄漏或者其他原因)
于是自制一个改良版的脚本,配合系统命令crontab,可以进行自动定期自动认证,并避免校园网认证程序过度占用的问题。
#!/bin/bash
function checkNet(){
res=$(ping -c 3 baidu.com | xargs | grep "3 received")
if [[ $(echo $res | wc -c) -ge 10 ]]; then
echo "网络连接正常"
return $((0));
fi
echo "网络连接异常"
return $((1));
}
function connectWifi(){
echo "正在连接校园网帐号:$1"
echo "启动认证程序..."
/程序路径/ESurfingSvr $1 $2 &>/dev/null&\
echo "20秒后自动关闭认证程序..."&\
sleep 20 &&\
echo "关闭认证程序..." &&\
ps aux | grep ESurfingSvr | grep -v grep | awk '{print $2}' | xargs -I {} kill -9 {}
echo "认证程序已关闭"
echo "测试网络是否连通..."
checkNet
}
echo $?
wifiName=`iwconfig 2>/dev/null | grep ESSID`
wifiName=${wifiName#*\"}
wifiName=${wifiName%\"*}
echo "当前连接的wifi:"$wifiName
if [[ "$wifiName" == "校园网wifi名称"]]; then
connectWifi "帐号" "密码"
checkNet
until [[ $? -eq 0 ]]; do
connectWifi "帐号" "密码"
checkNet
done
echo "认证完成,自动退出..."
fi
运行过程截图如下:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)