用AWSCLI描述EBS详细信息量



我需要列出所有所有者的aws-ami及其任何详细信息。

以下行返回image_id、CreationDate、Name,并按CreationDate组织:

aws ec2描述图像--所有者--查询'images[*]。[ImageId,CreationDate,Name]'|sort_by(@,&[1])'--输出文本

但是,我需要任何关于BlockDevicesMapping的信息,比如Ebs卷[快照id,卷大小e等]

我做了下面一行aws ec2描述图像——所有者——查询‘images[*]。[ImageId,CreationDate,Name,BlockDeviceMappings:[Ebs:{SnapshotID}]]--输出文本。但是,搜索终端停止了。

我尝试了很多方法。

谢谢你对我的帮助。

描述图像的输出如下。

{
"Images": [
{
"VirtualizationType": "hvm",
"Description": "Provided by Red Hat, Inc.",
"PlatformDetails": "Red Hat Enterprise Linux",
"EnaSupport": true,
"Hypervisor": "xen",
"State": "available",
"SriovNetSupport": "simple",
"ImageId": "ami-1234567890EXAMPLE",
"UsageOperation": "RunInstances:0010",
"BlockDeviceMappings": [
{
"DeviceName": "/dev/sda1",
"Ebs": {
"SnapshotId": "snap-111222333444aaabb",
"DeleteOnTermination": true,
"VolumeType": "gp2",
"VolumeSize": 10,
"Encrypted": false
}
}
],
"Architecture": "x86_64",
"ImageLocation": "123456789012/RHEL-8.0.0_HVM-20190618-x86_64-1-Hourly2-GP2",
"RootDeviceType": "ebs",
"OwnerId": "123456789012",
"RootDeviceName": "/dev/sda1",
"CreationDate": "2019-05-10T13:17:12.000Z",
"Public": true,
"ImageType": "machine",
"Name": "RHEL-8.0.0_HVM-20190618-x86_64-1-Hourly2-GP2"
}
]
}

正如您所看到的,BlockDeviceMappings是一个数组,因此在尝试访问其对象之前,应该先将其展平。

我建议指定--owners 12347989。若你们试图弄明白所有所有者的所有错误,终端就会挂断。我用accountId运行了下面的命令,得到了所需的输出,但如果我没有指定所有者,我的终端就会挂起。

试试这个:

aws ec2 describe-images --owners amazon --query 'Images[*].[ImageId, CreationDate, Name, BlockDeviceMappings[0].DeviceName, BlockDeviceMapping[0].VolumeSize, BlockDeviceMappings[0].SnapshotId]' --output text 

最新更新