aboutsummaryrefslogtreecommitdiff
path: root/coWifi
diff options
context:
space:
mode:
authorache <ache@ache.one>2019-02-04 15:56:15 +0100
committerache <ache@ache.one>2019-02-04 15:56:15 +0100
commitfa994d1c81c890b9768e6a3f12267f44c574af3c (patch)
tree95c4fb4b91cfea3aeac88aecdf4dd89496ebd0c4 /coWifi
parentAdd euclide ¯\_(ツ)_/¯ (diff)
Various script
Diffstat (limited to 'coWifi')
-rwxr-xr-xcoWifi65
1 files changed, 65 insertions, 0 deletions
diff --git a/coWifi b/coWifi
new file mode 100755
index 0000000..5e17619
--- /dev/null
+++ b/coWifi
@@ -0,0 +1,65 @@
+#!/bin/env bash
+
+interface="";
+
+
+function guess_wifi {
+ toAll="$1"
+ _interface=""
+ for i in `ls /sys/class/net/`; do
+ if [ -d "/sys/class/net/$i/wireless" ] ; then
+ _interface="$i"
+ fi
+ done
+ if [ -z $interface ] ; then
+# echo 'No Wireless interface found\nExit'
+ if [ "$toAll" == "all" ] ; then
+# echo 'flushing all'
+ _interface=all
+ else
+ echo "${_interface}"
+ exit 1
+ fi
+ fi
+ echo "${_interface}"
+}
+
+
+
+if [ "$1" == 'off' ] ; then
+ if [ -z "$2" ] ; then
+ interface=$(guess_wifi '')
+ else
+ interface=$(guess_wifi 'all')
+ fi
+ echo 'OFF'
+ sudo pkill -f dhcpcd
+ sudo pkill -f wpa_supplicant
+ if [ "${interface}" = 'all' ] ; then
+ sudo ip route flush all
+ else
+ sudo ip route flush dev "${interface}"
+ fi
+ sudo pkill -f ssh
+ exit 0
+elif [ -z "$1" ] ; then
+ interface=$(guess_wifi '')
+else
+ interface="$1"
+fi
+
+
+
+if [ -z "$2" ]
+then
+ sudo wpa_supplicant -B "-i${interface}" -D wext -c/etc/wpa_supplicant/wpa_supplicant.conf
+else
+ if [ -z "$3" ]
+ then
+ sudo iwconfig "${interface}" essid "$2"
+ else
+ sudo iwconfig "${interface}" ap "$3"
+ sudo iwconfig "${interface}" essid "$2"
+ fi
+fi
+sudo dhcpcd "${interface}"