function knife_ssh() { grep -q $1 ~/.knife_comp~ || rm -f ~/.knife_comp~; ssh $(knife node show $1 | awk '/IP:/{print $2}') } _knife_ssh() { if hash knife 2>/dev/null; then if [[ ! -f ~/.knife_comp~ ]]; then echo "\nGenerating ~/.knife_comp~..." >/dev/stderr knife node list > ~/.knife_comp~ fi compadd `cat ~/.knife_comp~` else echo "Could not find knife" > /dev/stderr; fi } compdef _knife_ssh knife_ssh