Linux下登录新版TUNet的bash脚本

写了一个登录新版TUNet的脚本,因为是一边翻书一边写的,所以非常挫,不过应该能用。

写这个最初目的是做嵌入式的大作业的,因为TUNet更新了,所以不能做以前的那个mytunet的交叉编译了。。。

脚本在Openwrt上测试通过。

把脚本中的your_username替换成info的用户名,your_password_md5替换成你的密码的md5,可以用echo -n your_password | md5sum来得到。另外脚本需要curl,Ubuntu用户可以用sudo apt-get install curl来安装。

代码如下:

#!/bin/bash   # your info's username   uname=your_username   # your info's password's md5sum   pass=your_password_md5   ####################################################   do_login() {   login_data='username='$uname'&password='$pass'&drop=0&type=1&n=100'   check_data='action=check_online'      # check whether already online   con=`curl -d $check_data -s `      if [ -z $con ]; then   # start login   res=`curl -d $login_data -s `      #handle result   pe=`echo $res | grep error`   if [ -z $pe ]; then   echo "Login Success!"      else   echo $pe   exit 0   fi      # display flux infomation   flux=`echo $res | awk -F ',' '{print $3}'`   a=$(($flux/1000000000))   b=$((($flux%1000000000)/100000000))   c=$((($flux%100000000)/10000000))   echo "Used Flux: "$a"."$b$c"G."       else   echo "Already Online!"      # display flux information and online time   flux=`echo $con | awk -F ',' '{print $3}'`   time=`echo $con | awk -F ',' '{print $5}'`   a=$(($flux/1000000000))    b=$((($flux%1000000000)/100000000))   c=$((($flux%100000000)/10000000))   h=$(($time/3600))   m=$(($(($time%3600))/60))   s=$(($(($time%3600))%60))   echo "Used Flux: "$a"."$b$c"G, Online Time: "$h":"$m":"$s"."   fi   }      do_logout() {   # start logout   res=`curl -s `      #handle result   if [ "$res" == "logout_ok" ]; then   echo "Logout Success!"   elif [ "$res" == "not_online_error" ]; then   echo "You're not Online!"   else   echo "Operation Failed!"   fi   }      ##################################################################################   if [ "$1" == "login" ]; then   do_login   elif [ "$1" == "logout" ]; then   do_logout   else   echo "Usage: "$0" {login|logout}"   fi  

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wyjgzg.html