Last active
July 19, 2016 16:49
-
-
Save mbabineau/319882 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# ssh-instance - function to let you SSH to an EC2 instance ID | |
# Written by Mike Babineau <[email protected]>. Original here: https://gist.github.com/mbabineau/319882/ | |
# Put this in ~/.profile and reload your terminal | |
function ssh-instance() { | |
if [ $# -lt 1 ] || [ $# -gt 3 ]; then | |
echo "Usage: ssh-instance [-r region] <instance id>" | |
else | |
case "$1" in | |
"-r") | |
if [ $# -eq 3 ] && [ -n "`echo $3|egrep \"^i-[0-9a-z]+\"`" ]; then | |
ssh `ec2-describe-instances --region $2 $3|grep "^INSTANCE"|cut -f4` | |
else | |
echo "Usage: ssh-instance [-r region] <instance id>" | |
return 1 | |
fi;; | |
i-[0-9a-zA-Z]*) | |
if [ $# -eq 3 ] && [ "$2" == "-r" ]; then | |
ssh `ec2-describe-instances --region $3 $1|grep "^INSTANCE"|cut -f4` | |
elif [ $# -eq 1 ]; then | |
ssh `ec2-describe-instances $1|grep "^INSTANCE"|cut -f4` | |
else | |
echo "Usage: ssh-instance [-r region] <instance id>" | |
return 1 | |
fi;; | |
*) | |
echo "Usage: ssh-instance [-r region] <instance id>" | |
esac | |
fi | |
return 0 | |
} |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
# ssh-instance - script to let you SSH to an EC2 instance ID | |
# Written by Mike Babineau <[email protected]>. Original here: https://gist.github.com/mbabineau/319882/ | |
if [ $# -lt 1 ] || [ $# -gt 3 ]; then | |
echo "Usage: ssh-instance [-r region] <instance id>" | |
else | |
case "$1" in | |
"-r") | |
if [ $# -eq 3 ] && [ -n "`echo $3|egrep \"^i-[0-9a-z]+\"`" ]; then | |
ssh `ec2-describe-instances --region $2 $3|grep "^INSTANCE"|cut -f4` | |
else | |
echo "Usage: ssh-instance [-r region] <instance id>" | |
exit 1 | |
fi;; | |
i-[0-9a-zA-Z]*) | |
if [ $# -eq 3 ] && [ "$2" == "-r" ]; then | |
ssh `ec2-describe-instances --region $3 $1|grep "^INSTANCE"|cut -f4` | |
elif [ $# -eq 1 ]; then | |
ssh `ec2-describe-instances $1|grep "^INSTANCE"|cut -f4` | |
else | |
echo "Usage: ssh-instance [-r region] <instance id>" | |
exit 1 | |
fi;; | |
*) | |
echo "Usage: ssh-instance [-r region] <instance id>" | |
esac | |
fi | |
exit 0 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Thanks @sebykrueger.
FYI - I had to add quotes (") around the query text to get this to work.
My final script: