The two option are
wicd-cli (noted in the comment by meuh) and
networkmanager. Which to use is matter of personal preference. I use
networkmanager just because it has a better manual (but that, again, is matter of preference).
wpa_supplicant stores files in
/etc/wpa_supplicant/ one per interface,
networkmanager stores files in
/etc/NetworkManager/system-connections/ one per SSID. The parameter names for
networkmanager are not very different from
wpa_supplicant, for example a file in
/etc/NetworkManager/system-connections/ may look as follows:
(This looks similar to
My experience with
networkmanager is on Arch, not Debian, therefore I cannot tell with 100% accuracy on the Debian dependency chain. But,
networkmanager does not require Xorg (or GTK, or KDE).
Moreover, the command line tool to
nmcli, is very similar in design to
iproute2. In essence, as you would do:
ip addr help
to get help for the
addr command, you do:
nmcli device wifi help
to get help on all
wifi commands for
devices. Since I use
ip a lot, I find
nmcli very intuitive, but then again, that is matter of personal preference.
networkmanager has a built-in DHCP client, but can be configured to use an external one.
As for reducing the number of commands,
nmcli will perform the work of disconnecting from one SSID (closing DHCP too) and connect to a new SSID (and start DHCP) with on command (assuming the password is already saved):
nmcli device wifi connect <new SSID>
Or for the lazy typer:
nmcli d w c <new SSID>