Ame*_*ina 4 amazon-web-services aws-cli
使用aws CLI,如何在给定其instanceID的情况下检索EC2实例的私有IP地址?
当我做:
aws ec2 describe-instance-status --instance-ids <instance_ID>
Run Code Online (Sandbox Code Playgroud)
我得到其他信息,但不是私有IP地址,例如:
{
"InstanceStatuses": [
{
"InstanceId": "XXXXX",
"InstanceState": {
"Code": 16,
"Name": "running"
},
"AvailabilityZone": "us-east-1a",
"SystemStatus": {
"Status": "ok",
"Details": [
{
"Status": "passed",
"Name": "reachability"
}
]
},
"InstanceStatus": {
"Status": "ok",
"Details": [
{
"Status": "passed",
"Name": "reachability"
}
]
}
}
]
}
Run Code Online (Sandbox Code Playgroud)
试试吧describe-instances.不会使用describe-instance-status返回专用IP地址,因为该命令描述了系统和实例状态,主要与硬件/问题或预定事件有关.
根据describe-instances文档的"输出"部分,describe-instances的部分输出是一个字符串PrivateIpAddress.
用法示例:
aws ec2 describe-instances --instance-ids <instance_ID>
Run Code Online (Sandbox Code Playgroud)
要获取所有私有 IP 地址:
aws ec2 describe-instances --instance-ids ${INSTANCE_ID} |\
jq -r '.Reservations[].Instances[].NetworkInterfaces[].PrivateIpAddress'
Run Code Online (Sandbox Code Playgroud)
或者
aws ec2 describe-instances --instance-ids ${INSTANCE_ID} |\
jq -r ".Reservations[]" | grep PrivateIpAddress |\
egrep -o "([0-9]{1,3}\.){3}[0-9]{1,3}" | sort -u
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1952 次 |
| 最近记录: |