diff --git a/iso/overlay/usr/local/bin/netconf b/iso/overlay/usr/local/bin/netconf index 63d2aff..277713e 100755 --- a/iso/overlay/usr/local/bin/netconf +++ b/iso/overlay/usr/local/bin/netconf @@ -13,11 +13,22 @@ for iface in $IFACES; do i=$((i+1)) done echo "" -printf "Interface name [or Enter to pick first]: " -read IFACE -if [ -z "$IFACE" ]; then +printf "Interface number or name [Enter = first]: " +read INPUT + +if [ -z "$INPUT" ]; then IFACE=$(echo "$IFACES" | head -1) +elif echo "$INPUT" | grep -qE '^[0-9]+$'; then + # Numeric input — resolve to name + IFACE=$(echo "$IFACES" | awk "NR==$INPUT") + if [ -z "$IFACE" ]; then + echo "Error: no interface with number $INPUT" + exit 1 + fi +else + IFACE="$INPUT" fi + echo "Selected: $IFACE" echo "" echo " 1) DHCP"