获取子网 ID AWS
get subnet id AWS
我正在尝试获取特定 VPC 中的子网 ID 并将它们存储在变量中
所以我可以在 bash 脚本
中使用它们
aws ec2 describe-subnets --filter "Name=vpc-id,Values=VPCid" --region $REGION --query "Subnets[*].SubnetId" --output text
这给出了这样的东西
subnet-12345 subnet-78910
(END)
我想知道如何将它们存储到变量中。
我试过
SBnet=$(aws ec2 describe-subnets --filter "Name=vpc-id,Values=VPCid" --region $REGION --query "Subnets[*].SubnetId" --output text)
但后来我不知道我可以访问 array/list 创建的。
我试过
echo $(SBnet[0])
但不起作用
我在使用 zsh 的 MACos
您可以按如下方式进行(添加您的 VPC 和区域):
#!/bin/bash
SUBNET_IDS=$(aws ec2 describe-subnets --filter "Name=vpc-id,Values=vpc-1234" --query "Subnets[*].SubnetId" --output text)
for SUBNET_ID in $SUBNET_IDS;
do
echo $SUBNET_ID
done
要将子网 ID 列表拆分为变量,您可以这样做:
#!/bin/bash
SUBNET_IDS=$(aws ec2 describe-subnets --filter "Name=vpc-id,Values=vpc-1234" --query "Subnets[*].SubnetId" --output text)
IFS=$'\t ' read -r -a subnet_ids <<< $SUBNET_IDS
echo "${subnet_ids[0]}"
echo "${subnet_ids[1]}"
并且各个子网 ID 将在 subnet_ids
数组中。
我正在尝试获取特定 VPC 中的子网 ID 并将它们存储在变量中 所以我可以在 bash 脚本
中使用它们aws ec2 describe-subnets --filter "Name=vpc-id,Values=VPCid" --region $REGION --query "Subnets[*].SubnetId" --output text
这给出了这样的东西
subnet-12345 subnet-78910
(END)
我想知道如何将它们存储到变量中。
我试过
SBnet=$(aws ec2 describe-subnets --filter "Name=vpc-id,Values=VPCid" --region $REGION --query "Subnets[*].SubnetId" --output text)
但后来我不知道我可以访问 array/list 创建的。
我试过
echo $(SBnet[0])
但不起作用
我在使用 zsh 的 MACos
您可以按如下方式进行(添加您的 VPC 和区域):
#!/bin/bash
SUBNET_IDS=$(aws ec2 describe-subnets --filter "Name=vpc-id,Values=vpc-1234" --query "Subnets[*].SubnetId" --output text)
for SUBNET_ID in $SUBNET_IDS;
do
echo $SUBNET_ID
done
要将子网 ID 列表拆分为变量,您可以这样做:
#!/bin/bash
SUBNET_IDS=$(aws ec2 describe-subnets --filter "Name=vpc-id,Values=vpc-1234" --query "Subnets[*].SubnetId" --output text)
IFS=$'\t ' read -r -a subnet_ids <<< $SUBNET_IDS
echo "${subnet_ids[0]}"
echo "${subnet_ids[1]}"
并且各个子网 ID 将在 subnet_ids
数组中。