校园网在windows和手机上都有客户端了,不用很麻烦的每天打开电脑后必须要打开网页登录。但是在Linux和mac上还没有同学做这个应用,所以写了个脚本可以凑合先用着。

#######################################

# author: wangbin(gkwangbin@126.com) #

# date: 2017-06-02           #

#######################################

#!/bin/bash

#'wlp2s0'是我自己的无线网卡,可以使用ifconfig查看连接信息后替换成自己的

ip=`ifconfig wlp2s0 |grep "inet addr"| cut -f 2 -d ":"|cut -f 1 -d " "`

#echo $ip

option="${1}"

username=账号

passwd=密码

# --login  登录

# --logoff 注销

# --logout 断开

# --info   信息

case $option in

--login) curl -s -H "ipgw.neu.edu.cn" --data "action=login&ac_id=1&user_ip=&nas_ip=&user_mac=&url=/include/auth_action.php&username=${username}&password=${passwd}&save_me=0" 'https://ipgw.neu.edu.cn/srun_portal_pc.php?url=&ac_id=1' | grep -o  "网络已连接"

;;

--logoff) curl -s -H "ipgw.neu.edu.cn" --data "action=auto_logout&user_ip=${ip}" 'https://ipgw.neu.edu.cn/srun_portal_pc.php?url=&ac_id=1' | grep -o -E "网络已断开|您似乎未曾连接到网络"

;;

--logout) curl -s -H "ipgw.neu.edu.cn" --data "action=logout&username=${username}&password=${passwd}&ajax=1" 'https://ipgw.neu.edu.cn/include/auth_action.php'

echo

;;

--info) curl -s -H "ipgw.neu.edu.cn" --data "action=get_online_info" 'https://ipgw.neu.edu.cn/include/auth_action.php'

echo

;;

esac

之前的连接信息显示的不是很明确,做了一下更新:

#######################################

# author: wangbin(gkwangbin@126.com) #

# date: 2017-06-02           #

#######################################

#!/bin/bash

ip=`ifconfig wlp2s0 |grep "inet addr"| cut -f 2 -d ":"|cut -f 1 -d " "`

#echo $ip

option="${1}"

username=账号

passwd=密码

echo "账户名称: ${username}";

# --login  登录

# --logoff 注销

# --logout 断开

# --info   信息

case $option in

--login) curl -s -H "ipgw.neu.edu.cn" --data "action=login&ac_id=1&user_ip=&nas_ip=&user_mac=&url=/include/auth_action.php&username=${username}&password=${passwd}&save_me=0" 'https://ipgw.neu.edu.cn/srun_portal_pc.php?url=&ac_id=1' | grep -o -E "已经在线了|网络已连接"

;;

--logoff) curl -s -H "ipgw.neu.edu.cn" --data "action=auto_logout&user_ip=${ip}" 'https://ipgw.neu.edu.cn/srun_portal_pc.php?url=&ac_id=1' | grep -o -E "网络已断开|您似乎未曾连接到网络"

;;

--logout) curl -s -H "ipgw.neu.edu.cn" --data "action=logout&username=${username}&password=${passwd}&ajax=1" 'https://ipgw.neu.edu.cn/include/auth_action.php'

echo

;;

--info) curl -s -H "ipgw.neu.edu.cn" --data "action=get_online_info" 'https://ipgw.neu.edu.cn/include/auth_action.php' | awk 'BEGIN{FS=","} {if($1=="not_online"){status="not online" } else {status="online"; total=$1/1073741824; time=$2/3600}} END{printf "账号状态: %-s\n", status; printf "已用流量: %-8.2f GB\n", total; printf "已用时长: %-8.2f hours\n", time;printf "账户余额: %-8s Yuan\n", $3; printf  "ip  地址: %-s", $6;}'

echo

;;

--help) echo "--login 登录"

echo "--logoff 注销"

echo "--logout 全部断开"

echo "--info 上网信息"

;;

*) echo "please input operation command, command --help"

;;

esac

显示信息格式:

linux校园网自动登录命令,东北大学校园网登录登出shell脚本相关推荐

  1. 东北大学校园网登录登出shell脚本

    校园网在windows和手机上都有客户端了,不用很麻烦的每天打开电脑后必须要打开网页登录.但是在linux和mac上还没有同学做这个应用,所以写了个脚本可以凑合先用着. ############### ...

  2. 扫盲 Linux&UNIX 命令行——从“电传打字机”聊到“shell 脚本编程”

    扫盲 Linux&UNIX 命令行--从"电传打字机"聊到"shell 脚本编程" 本文目标读者 虽然本文的标题号称是[扫盲],但俺相信:即使是一些 P ...

  3. Linux 下qt 程序打包发布(使用linuxdelpoyqt ,shell 脚本)

    Linux 下qt 程序打包发布(使用linuxdelpoyqt ,shell 脚本) 转载于:https://www.cnblogs.com/zhehan54/p/9549017.html

  4. Linux下将数据文件的指定域读取到shell脚本中

    Linux下将数据文件的指定域读取到shell脚本中 这个例子说明了怎样在Linux下shell脚本中从数据文件读取特定的域(field)并进行操作.例如,假设文件employees.txt的格式是{ ...

  5. linux expect 自动交互命令 总结

    如何从机器A上ssh到机器B上,然后执行机器B上的命令?如何使之自动化完成?看完下面的文章你就明白了 一.安装 expect 是基于tcl 演变而来的,所以很多语法和tcl 类似 sudo apt-g ...

  6. linux开机自动执行命令或自动启动程序(rc.local)

    linux开机的最后会执行/etc/rc.local,因此可以在此脚本里面添加shell命令自动执行或者自动启动某个进程. 比如 自动输出信息: #!/bin/sh -e # # rc.local # ...

  7. Linux中shift命令的用法,一文掌握shell脚本中shift的用法及功能

    概述 今天主要介绍下shell脚本中shift的一些用法,这个命令还是相对比较少见的. 一.shift介绍 shift命令用于对参数的移动(左移),通常用于在不知道传入参数个数的情况下依次遍历每个参数 ...

  8. curl shell 失败_linux – curl命令不在bash中通过shell脚本执行

    我正在学习 shell脚本!同样我尝试在ubuntu终端上使用curl下载facebook页面. t.sh内容 vi@vi-Dell-7537(Desktop) $cat t.sh curlCmd=& ...

  9. android执行命令行取得结果,Android调用shell脚本并取得输出

    Android调用shell脚本并获得输出 前段时间做的HLS流媒体服务器可以正常工作了,但是它的启动需要在PC机命令行中进行或者在Android下载个Terminal IDE软件,在Android上 ...

  10. linux 用户shell 无效,浅谈Linux环境下,为什么设置用户ID位对shell脚本无效

    前言: 博主在前不久的一个项目中,项目组的组员需要删除由daemon守护进程创建的缓存文件.但是删除这些缓存文件需要超级用户权限.博主用root用户创建了一个设置用户id的shell脚本来实现此功能. ...

最新文章

  1. AWS — AWS 上的 NFV
  2. ASP.NET怎么防止多次点击提交按钮重复提交
  3. mysql qt自增_mysql自增设置
  4. python的数值类型_Python的数值类型
  5. Visual Studio Team System 2008 安装失败
  6. anaconda如何更改环境配置_手把手教新手安装Anaconda配置开发环境
  7. Selenium webdriver中的xpath定位
  8. Nginx基本数据结构之ngx_str_t
  9. Maven学习总结(19)——深入理解Maven相关配置
  10. laravel sql多个orWhere条件时数据查询错误
  11. java locale中文_locale错误导致Java中文乱码错误的总结
  12. xp 系统不能够通过网络访问解决方法
  13. SSM返回中文乱码问题,SpringMVC返回中文乱码,SSM返回String字符串乱码问题
  14. 跟小静学MVC3[03]--相关语法特性小补习
  15. 1319 移棋子游戏(sg函数模板)
  16. 计算机屏幕颜色变黄色,win10系统电脑屏幕颜色偏黄如何调节
  17. 雷神simplest_ffmpeg_player解析(四)
  18. 浪潮服务器键盘自动输空格,浪潮推出自主车载加固1U服务器填补国内该领域空白...
  19. 【Java】Annotation
  20. Gdevops 2017全球敏捷运维峰会即将登陆北京!

热门文章

  1. 自动化运维工具ansible简介
  2. Java中string,map,json之间的常用转换方法(json转map,map转json,json转string等)
  3. Pytorch实现语义分割指标
  4. java swing实验_java实验报告Swing
  5. Kotlin 中文文档
  6. python操作腾讯文档_python查看文档
  7. android手机读代码的app,android代码阅读器
  8. SQL在线练习 工具
  9. Ubuntu下网络调试助手 NetAssist
  10. 《软件工程》课程:期末复习提纲(超详细课本内容)