Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!bin/bash
- # Busca redes wifi
- function BSSID()
- {
- bssid=`cat redes.temp |\
- grep -B 5 "$1" |\
- sed -n "1p" | awk '{print $5}'`
- }
- clear
- scan="Escaneando."
- interfaz="wlan0" # Comentar
- echo "Nombre de la interfaz: $interfaz" #Para preguntar interfaz
- #echo -n "Nombre de la interfaz: " # Descometar
- #read interfaz # Para preguntar interfaz
- accesos=`iwlist $interfaz scan > redes.temp`
- if [ $? -ne 0 ]; then exit 1; else echo -n ""; fi
- n_accesos=`grep ESSID redes.temp | wc -l`
- i=1; o=0
- while [[ $i && $o -lt $n_accesos ]]; do
- printf "$scan\r"
- red[$o]=`iwlist $interfaz scan |\
- grep ESSID |\
- awk '{print $1}' |\
- perl -p -e 's/ESSID://g; s/^["]//g ; s/["]$//g' |\
- sed -n -e "$i p; /^$/d"`
- let i=i+1 && let o=o+1 && scan=${scan}"."
- done
- i=0;
- echo "Redes disponibles : "
- while [ $i -lt ${#red[*]} ]; do
- enctriptacion[$i]=`cat redes.temp |\
- grep -B 1 ${red[$i]} |\
- sed -n "1p" |\
- awk '{print $2}'`
- BSSID ${red[$i]}
- if [[ ${enctriptacion[$i]} = "key:off" ]] ; then
- echo -e "\e[1;35m$i \e[0m" "${red[$i]}\t $bssid\t (Abierta)"
- else
- echo -e "\e[1;35m$i \e[0m" "${red[$i]}\t $bssid"
- fi
- let i=i+1
- done
- echo -n "Hay ${#red[*]} redes dispnibles,conectarse a : "
- n=`expr ${#red[*]} - 1`
- while [ 1 ]; do
- read conect
- if [[ $conect =~ [0-"${n}"] ]]; then
- break
- else
- echo -n "Hay ${#red[*]} redes disponibles,conectarse a (numeros) : "
- continue
- fi
- done
- BSSID ${red[$conect]}
- echo -e "\e[1;33mESSID : ${red[$conect]} BSSID : $bssid \e[0m"
- <<EOD
- Por si necesitan el essid y bssid
- essid=${red[$conect]}
- bssid=`cat redes.temp |\
- grep -B 5 "${red[$conect]}" |\
- sed -n "1p" | awk '{print $5}'`
- EOD
- while [ 1 ]; do
- if [ ${enctriptacion[$conect]} = "key:off" ]; then
- echo "Conectando..."; sleep 1;
- iwconfig $interfaz essid "${red[$conect]}"
- echo "Ejecutando dhcpcd"
- dhcpcd $interfaz
- rm redes.temp
- break
- else
- echo -n "Clave(Wep):: "
- read -s clave # Eliminar "-s" para poder ver l clave al escribir
- echo "Conectando..."
- iwconfig $interfaz essid "${red[$conect]}" key $clave
- echo "Ejecutando dhcpcd"
- dhcpcd $interfaz #cambiar dhcpcd por otro programa
- if [$? -eq 0 ]; then
- echo "Error :("
- continue
- else
- rm redes.temp
- break
- fi
- fi
- done
- #This library is free software; you can redistribute it and/or modify it under
- #the terms of the GNU Library General Public License as published by the Free
- #Software Foundation; either version 2.1 of the License, or (at your option) any
- #later version.
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement