#! /bin/sh # # kill ssh client: sshkill user@host:port # setup bash completion: . sshkill # if ! grep -q '^ControlPath /tmp/%u/sshmux/%r@%h:%p$' "$HOME/.ssh/config"; then echo "Your ~/.ssh/config's ControlPath sucks!" >&2 (exit 23) else if test "${0:0:1}" = -; then if ! echo "${BASHOPTS-}" | grep -Eq '(^|:)progcomp(:|$)'; then echo "source sshmux into something other than a progcomp'able bash" >&2 (exit 23) else # setup bash completion comp_sshkill() { if test $COMP_CWORD = 1; then COMPREPLY=($(cd "/tmp/$LOGNAME/sshmux" && ls | grep "^${COMP_WORDS[$COMP_CWORD]}.*")) fi } complete -F comp_sshkill sshkill fi else # kill ssh client set -euf exec pkill -f "^ssh: /tmp/$LOGNAME/sshmux/$1 \[mux\]$" fi fi