我想制作一个简单的bash脚本来连接到已知的wifi网络。 到目前为止,我有......
#!/bin/bash
NETWORK_ID=${1:myintranet}
WIRELESS_KEY=${2:""}
WIRELESS_DEVICE=${3:wlan0}
if [ ! -n "$WIRELESS_KEY" ]; then
read -s -p "Enter Password: " WIRELESS_KEY
fi
#ifconfig wlan0
iwconfig wlan0 essid $NETWORK_ID key s:$WIRELESS_KEY
dhclient wlan0
我在请求时输入网络的纯文本密码,但失败并显示错误
iwconfig: unknown command "s:myPassword"
但是我找不到任何理由为什么它应该期望命令而不是将密钥转换为十六进制。
答案 0 :(得分:1)
对于WEP wifi,这对我来说很好。不要忘记使用.sh扩展名来命名脚本。
#!/bin/bash
NETWORK_ID=${1:myintranet}
WIRELESS_KEY=${2:xxx}
WIRELESS_DEVICE=${3:wlan0}
if [ -z "$WIRELESS_KEY" ]; then
read -s -p "Enter Password: " WIRELESS_KEY
fi
#ifconfig wlan0
iwconfig wlan0 essid $NETWORK_ID key s:$WIRELESS_KEY
dhclient wlan0
对于WPA wifi,它可能无法正常工作。考虑使用wpa_supplicant或使用wicd(wicd-gtk)
进行配置