连接到特定无线网络时运行命令

时间:2010-06-07 12:51:54

标签: linux ubuntu wifi wlan

在我的大学里,有一个为学生和员工开放的某个wlan网络。但是,要使用它,必须首先使用您自己的用户名和密码通过网站登录。这也可以通过将具有正确POST数据的http请求提交到同一网站来完成。我已经有了一个shell脚本来执行此操作,但我仍然很想知道每次我的计算机连接到大学wlan时是否可以自动运行此脚本。是否有可能以一种简单的方式做到这一点?

2 个答案:

答案 0 :(得分:2)

我知道NetworkManager(在Ubuntu中使用)暴露了一个DBUS接口 - 我怀疑有一个可以使用的网络连接/断开事件。请尝试查看NetworkManager DBUS Interface规范。

如果您之前从未使用过DBUS,请不要担心,几乎每种语言都有绑定。我确信甚至可以从shell脚本调用CLI客户端。 This blog entry展示了如何使用Python从NetworkManager检测新连接 - 这可能是一个很好的起点

答案 1 :(得分:0)

您可能会编写一个运行“iwconfig”的简单脚本并处理它的输出。如果找到网络名称(例如使用Regex),则发送请求。

我不认为你在实际连接到网络时可以触发脚本,但你可以将它添加到CRON,所以它每隔十秒执行一次。

Heres是您可能会发现有用的文档:https://help.ubuntu.com/community/CronHowto