#!/bin/bash # Get network interface card name nic_name=$(ip link show | awk -F': ' '/^[0-9]+: (wlan|wlp)/ {print $2; exit}') # Retrieve saved network names from wpa_supplicant networks=$(wpa_cli -i $nic_name list_networks | awk '{print $2}' | tail -n +2) # Display network names using dmenu and store the selected network selected_network=$(echo "$networks" | dmenu -p "Select a network:") # Get network ID from network name network_id=$(wpa_cli -i "$nic_name" get_network "$selected_network" id) # Check if a network was selected if [ -n "$network_id" ]; then # Connect to the selected network using wpa_supplicant wpa_cli -i $nic_name select_network "$network_id" echo "Connecting to $selected_network..." fi