【发布时间】:2019-10-15 21:36:01
【问题描述】:
我正在运行此命令来获取 EC2 的公共 IP。它按预期工作!
aws ec2 describe-instances --filters "Name=tag:Name,Values=EC2" --query 'Reservations[*].Instances[*].PublicIpAddress' --output text
我正在尝试使用这个值来运行这个命令,所以它必须是我从 ec2 describe-instances 获得的值,而不是 XX.XX.XX.XX
ansible-playbook provisioning/site.yml -i inventory --ssh-common-args '-o "proxycommand ssh -W %h:%p -i Key.pem ubuntu@XX.XX.XX.XX"'
所以我有这样的命令
IP=aws ec2 describe-instances --filters "Name=tag:Name,Values=$NAME_PREFIX*" --query 'Reservations[*].Instances[*].PublicIpAddress' --output text
export BASTION="ubuntu@${IP}"
ansible-playbook provisioning/site.yml -i inventory --ssh-common-args '-o "proxycommand ssh -W %h:%p -i Key.pem ${BASTION}"'
所以不确定,如果你能帮助我,我应该如何使用该输出
【问题讨论】:
-
使用:
IP=$(aws ec2 describe-instances --filters "Name=tag:Name,Values=$NAME_PREFIX*" --query 'Reservations[*].Instances[*].PublicIpAddress' --output text)
标签: bash amazon-web-services amazon-ec2 ansible