[Share Experiences] 开启 无线网卡热点的脚本
Tofloor
poster avatar
酷谷的谷子
deepin
2022-05-06 22:31
Author

这个就本主要是用 zenity GUI 来显示是否开启成功

首先安装sudo apt install deepin-wine-helper 这个会安装 zenity

或者sudo apt install zenity

sudo create_ap 无线网卡 有线网卡 SSID 密码

其他命令 sudo create_ap wlx00120ee661a7 ens33 ssh415 ssh415ssh

附件 开启无线网卡热点.sh.zip

#!/bin/bash
#需要安装 zenity
#开启无线网卡热点的脚本
#判断有没有无线网卡 没有会显示0行 有的话大于等于1行
p_ssid_new=`iwconfig|grep ESSID|wc -l`
p_ssid="0"
#判断是否开启/链接了WIFI没有显示 ESSID:off/any
p_ssid_off_a="off/any"
p_ssid_off_new=`iwconfig|grep ESSID`
#注意 先要自己先输出一下echo $p_ssid_off_b  在去除多余字符
#注意 要不然无法验证无线网卡网络状态
p_ssid_off_b=$(echo ${p_ssid_off_new#*ESSID} | sed 's/ //g' | sed 's/://g' | sed 's/"//g' \
| sed 's/Nickname//g' )
#获取无线网卡名称
P_NAME=`echo ${p_ssid_off_new%IEEE*} | sed 's/ //g'`
#获取MAC地址行数 2行就表示2个mac 第一行就是板载网卡,第二行就是无线网卡
p_mac_new=`ifconfig|grep ether|awk '{print $2}'|wc -l`
p_mac="2"
#排除有线网卡 没有链接网络 与便获得准确的无线网卡IP
MY_WIFI_IP_2_A=`ifconfig -a|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'\
| sed -n 2p|wc -l`
MY_WIFI_IP_2_B="0"

#无线热点名称 密码
CON_NAME="i85201314"
MY_WUXIAN_WIFI_key="88888888"
#判断是否开启有错误  显示 开启WIFI热点失败 一般就是网卡不支持
A=$(nmcli con up $CON_NAME)
B="Error"
# 命令出去 https://linux265.com/news/3899.html
#下面注释是开启无线网卡热点的命令 如果不行请尝试别的命令 替换掉一样的地方
#应为我的无线网卡不支持开启所以会显示开启热点失败
#nmcli con add type wifi ifname $P_NAME con-name $CON_NAME autoconnect yes ssid $CON_NAME
#nmcli con modify $CON_NAME wifi-sec.key-mgmt wpa-psk
#nmcli con modify $CON_NAME wifi-sec.psk $MY_WUXIAN_WIFI_key
#nmcli con up $CON_NAME

MY_WIFI()
{
if [ ! $p_ssid_new = $p_ssid ];then
if [ ! $p_ssid_off_b = $p_ssid_off_a ];then
if [ ! $p_mac_new = $p_mac ];then
nmcli con add type wifi ifname $P_NAME con-name $CON_NAME autoconnect yes ssid $CON_NAME
nmcli con modify $CON_NAME wifi-sec.key-mgmt wpa-psk
nmcli con modify $CON_NAME wifi-sec.psk $MY_WUXIAN_WIFI_key
#nmcli con up $CON_NAME
if [[ $A == *$B* ]]
then
zenity --info --icon-name="deepin-screenshot" --width=350  --title="开启无线网卡 WIFI热点" \
--text="\n======================\n||         已经开启WIFI热点         ||\n======================"
else
zenity --info --icon-name="deepin-screenshot" --width=350  --title="开启无线网卡 WIFI热点" \
--text="\n======================\n||         开启WIFI热点失败         ||\n======================"
fi
else
if [ ! $MY_WIFI_IP_2_A = $MY_WIFI_IP_2_B ];then
nmcli con add type wifi ifname $P_NAME con-name $CON_NAME autoconnect yes ssid $CON_NAME
nmcli con modify $CON_NAME wifi-sec.key-mgmt wpa-psk
nmcli con modify $CON_NAME wifi-sec.psk $MY_WUXIAN_WIFI_key
#nmcli con up $CON_NAME
if [[ $A == *$B* ]]
then
zenity --info --icon-name="deepin-screenshot" --width=350  --title="开启无线网卡 WIFI热点" \
--text="\n======================\n||         已经开启WIFI热点         ||\n======================"
else
zenity --info --icon-name="deepin-screenshot" --width=350  --title="开启无线网卡 WIFI热点" \
--text="\n======================\n||         开启WIFI热点失败         ||\n======================"
fi
else
nmcli con add type wifi ifname $P_NAME con-name $CON_NAME autoconnect yes ssid $CON_NAME
nmcli con modify $CON_NAME wifi-sec.key-mgmt wpa-psk
nmcli con modify $CON_NAME wifi-sec.psk $MY_WUXIAN_WIFI_key
#nmcli con up $CON_NAME
if [[ $A == *$B* ]]
then
zenity --info --icon-name="deepin-screenshot" --width=350  --title="开启无线网卡 WIFI热点" \
--text="\n======================\n||         已经开启WIFI热点         ||\n======================"
else
zenity --info --icon-name="deepin-screenshot" --width=350  --title="开启无线网卡 WIFI热点" \
--text="\n======================\n||         开启WIFI热点失败         ||\n======================"
fi
fi
fi
else
zenity --info --icon-name="deepin-screenshot" --width=350  --title="开启无线网卡 WIFI热点" \
--text="\n======================\n||     你的电脑没有链接WIFI     ||\n======================" ; exit
fi
else
zenity --info --icon-name="deepin-screenshot" --width=350  --title="开启无线网卡 WIFI热点" \
--text="\n======================\n||     你的电脑没有无线网卡     ||\n======================" ; exit
fi
}

MY_WIFI

exit 0

Reply Favorite View the author
All Replies
心平气和
deepin
2022-05-06 22:38
#1
Reply View the author
dxm6006
deepin
2022-05-07 00:29
#2

话说开个热点需要这么复杂吗?系统自带就有的功能了。

image.png

Reply View the author
寰宇ζ
deepin
2022-05-07 03:15
#3

想要WIFI和热点同时开,不知什么时候可实现

Reply View the author
神末shenmo
deepin
Spark-App
Q&A Team
2022-05-07 05:12
#4

不支持驱动的还是不支持

Reply View the author
a296982955
deepin
2022-05-20 03:03
#5
dxm6006

话说开个热点需要这么复杂吗?系统自带就有的功能了。

image.png

你好 我直接使用这里的开关打开热点共享后 手机链接一直提示密码错误是怎么回事啊

Reply View the author
a296982955
deepin
2022-05-20 03:04
#6
a296982955

你好 我直接使用这里的开关打开热点共享后 手机链接一直提示密码错误是怎么回事啊

image.png 这个是我的设置,能帮忙看看么

image.png

Reply View the author
酷谷的谷子
deepin
2022-05-20 03:22
#7
a296982955

image.png 这个是我的设置,能帮忙看看么

image.png

你看看这个 能不能有用 他们也不知道怎么解决 看看 不要密码试试

https://bbs.deepin.org/result?keyword=%E7%83%AD%E7%82%B9%20%E5%AF%86%E7%A0%81%E9%94%99%E8%AF%AF&search_type=1

Reply View the author
酷谷的谷子
deepin
2022-05-20 03:22
#8
It has been deleted!
a296982955
deepin
2022-05-23 21:32
#9

如果使用无密码的方式,手机链接后会一直显示 正在获取IP地址

我的是台式机

Reply View the author
yuyiwas
deepin
2022-06-29 22:14
#10
寰宇ζ

想要WIFI和热点同时开,不知什么时候可实现

这个得看网卡,然后优化,双频网卡双通道那种网卡支持,老的部分网卡都是单通道的

Reply View the author