diff options
Diffstat (limited to '.oh-my-zsh/plugins/knife_ssh/knife_ssh.plugin.zsh')
-rw-r--r-- | .oh-my-zsh/plugins/knife_ssh/knife_ssh.plugin.zsh | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/.oh-my-zsh/plugins/knife_ssh/knife_ssh.plugin.zsh b/.oh-my-zsh/plugins/knife_ssh/knife_ssh.plugin.zsh new file mode 100644 index 0000000..7fdd42a --- /dev/null +++ b/.oh-my-zsh/plugins/knife_ssh/knife_ssh.plugin.zsh @@ -0,0 +1,18 @@ +function knife_ssh() { + grep -q $1 ~/.knife_comp~ 2> /dev/null || 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 $(<~/.knife_comp~) + else + echo "Could not find knife" > /dev/stderr; + fi +} + +compdef _knife_ssh knife_ssh |