1

我想制作一个简单的 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"

但我找不到任何理由为什么它应该期待一个命令而不是将密钥转换为十六进制。

4

1 回答 1

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) 配置它

于 2013-02-05T14:00:44.903 回答