Amazon Web Services (AWS) - List EC2 instances using the AWS CLI

by
Jeremy Canfield |
Updated: September 03 2023
| Amazon Web Services (AWS) articles
This assumes you have already configured the aws command line tool. If not, check out my article on Getting Started with the AWS CLI.
The aws ec2 describe-instances command can be used to list your EC2 instances.
aws ec2 describe-instances
--filter can be used to only return the JSON for an specific instance.
aws ec2 describe-instances --filters "Name=tag:Name,Values=my-instance"
Or like this.
aws ec2 describe-instances --filters "Name=tag-value,Values=my-instance"
Something like this should be returned.
{
"Reservations": [
{
"Groups": [],
"Instances": [
{
"AmiLaunchIndex": 0,
"ImageId": "ami-09d3b3274b6c5d4aa",
"InstanceId": "i-09123475cf14abcd2",
"InstanceType": "t2.micro",
"KeyName": "aws",
"LaunchTime": "2022-11-06T09:23:52+00:00",
"Monitoring": {
"State": "disabled"
},
"Placement": {
"AvailabilityZone": "us-east-1a",
"GroupName": "",
"Tenancy": "default"
},
"PrivateDnsName": "ip-172-31-19-227.ec2.internal",
"PrivateIpAddress": "172.31.19.227",
"ProductCodes": [],
"PublicDnsName": "ec2-111-14-1-198.compute-1.amazonaws.com",
"PublicIpAddress": "111.14.1.198",
"State": {
"Code": 16,
"Name": "running"
},
"StateTransitionReason": "",
"SubnetId": "subnet-12344e403dc5abcdf",
"VpcId": "vpc-014d2f12343abcd01",
"Architecture": "x86_64",
"BlockDeviceMappings": [
{
"DeviceName": "/dev/xvda",
"Ebs": {
"AttachTime": "2022-11-06T09:23:53+00:00",
"DeleteOnTermination": true,
"Status": "attached",
"VolumeId": "vol-001abc7012a12345a"
}
}
],
"ClientToken": "7abcd6e-1234-5678-8189-e9abcd90ef67",
"EbsOptimized": false,
"EnaSupport": true,
"Hypervisor": "xen",
"NetworkInterfaces": [
{
"Association": {
"IpOwnerId": "123456789012",
"PublicDnsName": "ec2-111-14-1-198.compute-1.amazonaws.com",
"PublicIp": "111.14.1.198"
},
"Attachment": {
"AttachTime": "2022-11-06T09:23:52+00:00",
"AttachmentId": "eni-attach-07abcd2ecab1234d2",
"DeleteOnTermination": true,
"DeviceIndex": 0,
"Status": "attached",
"NetworkCardIndex": 0
},
"Description": "",
"Groups": [
{
"GroupName": "default",
"GroupId": "sg-0c1234b3cdabcddc1"
}
"Ipv6Addresses": [],
"MacAddress": "0a:c8:79:d2:a0:61",
"NetworkInterfaceId": "eni-01234335b8abcde2",
"OwnerId": "711234567852",
"PrivateDnsName": "ip-172-31-19-227.ec2.internal",
"PrivateIpAddress": "172.31.19.227",
"PrivateIpAddresses": [
{
"Association": {
"IpOwnerId": "123456789012",
"PublicDnsName": "ec2-111-14-1-198.compute-1.amazonaws.com",
"PublicIp": "111.14.1.198"
},
"Primary": true,
"PrivateDnsName": "ip-172-31-19-227.ec2.internal",
"PrivateIpAddress": "172.31.19.227"
}
],
"SourceDestCheck": true,
"Status": "in-use",
"SubnetId": "subnet-03c123403dcabcd8f",
"VpcId": "vpc-014d21234abcd3c01",
"InterfaceType": "interface"
}
],
"RootDeviceName": "/dev/xvda",
"RootDeviceType": "ebs",
"SecurityGroups": [
{
"GroupName": "default",
"GroupId": "sg-012346b3cdabcddc1"
}
],
"SourceDestCheck": true,
"Tags": [
{
"Key": "Name",
"Value": "my-instance"
}
],
"VirtualizationType": "hvm",
"CpuOptions": {
"CoreCount": 1,
"ThreadsPerCore": 1
},
"CapacityReservationSpecification": {
"CapacityReservationPreference": "open"
},
"HibernationOptions": {
"Configured": false
},
"MetadataOptions": {
"State": "applied",
"HttpTokens": "optional",
"HttpPutResponseHopLimit": 1,
"HttpEndpoint": "enabled",
"HttpProtocolIpv6": "disabled",
"InstanceMetadataTags": "disabled"
},
"EnclaveOptions": {
"Enabled": false
},
"PlatformDetails": "Linux/UNIX",
"UsageOperation": "RunInstances",
"UsageOperationUpdateTime": "2022-11-06T09:23:52+00:00",
"PrivateDnsNameOptions": {
"HostnameType": "ip-name",
"EnableResourceNameDnsARecord": true,
"EnableResourceNameDnsAAAARecord": false
}
}
],
"OwnerId": "123456789012",
"ReservationId": "r-02b1234f37168abc"
}
]
}
Did you find this article helpful?
If so, consider buying me a coffee over at