Amazon web services AWS EC2 CLI:在筛选条件中传递环境变量

Amazon web services AWS EC2 CLI:在筛选条件中传递环境变量,amazon-web-services,aws-cli,Amazon Web Services,Aws Cli,在为AWS EC2运行CLI时,我试图在筛选条件中传递环境变量 例如,我想在此代码段中传递vpc id和cidr块的环境变量 $ aws ec2 describe-subnets --filter 'Name=vpc-id,Values=vpc-0ce822f7ef200f28k',"Name=cidr-block,Values=10.0.0.0/24" --query "Subnets[].SubnetId" --output=text --region=us-west-1 subnet-0e

在为AWS EC2运行CLI时,我试图在筛选条件中传递环境变量

例如,我想在此代码段中传递vpc id和cidr块的环境变量

$ aws ec2 describe-subnets --filter 'Name=vpc-id,Values=vpc-0ce822f7ef200f28k',"Name=cidr-block,Values=10.0.0.0/24" --query "Subnets[].SubnetId" --output=text --region=us-west-1
subnet-0ec2d15eda8f20484
我正在尝试:

aws ec2 describe-subnets --filter 'Name=vpc-id,Values=$EC2_VPC_ID','Name=cidr-block,Values=$EC2_CIDR_BLOCK' --query "Subnets[].SubnetId" --output=text --region=us-west-1
但它不起作用。它尝试了多种组合,例如:

aws ec2 describe-subnets --filter "Name=vpc-id,Values='$EC2_VPC_ID'","Name=cidr-block,Values='$EC2_CIDR_BLOCK'" --query "Subnets[].SubnetId" --output=text --region=us-west-1

aws ec2 describe-subnets --filter "Name=vpc-id,Values=$EC2_VPC_ID","Name=cidr-block,Values=$EC2_CIDR_BLOCK" --query "Subnets[].SubnetId" --output=text --region=us-west-1

aws ec2 describe-subnets --filter 'Name=vpc-id,Values='$EC2_VPC_ID'','Name=cidr-block,Values='$EC2_CIDR_BLOCK'' --query "Subnets[].SubnetId" --output=text --region=us-west-1
他们都不工作

顺便说一句,这是工作之前,它停止工作最近

aws ec2 describe-subnets --filter 'Name=vpc-id,Values='$EC2_VPC_ID'','Name=cidr-block,Values='$EC2_CIDR_BLOCK'' --query "Subnets[].SubnetId" --output=text --region=us-west-1

这适用于Amazon Linux:

aws ec2 describe-subnets --filter "Name=vpc-id,Values=$EC2_VPC_ID,Name=cidr-block,Values=$EC2_CIDR_BLOCK" --query "Subnets[].SubnetId" --output text

这适用于Amazon Linux:

aws ec2 describe-subnets --filter "Name=vpc-id,Values=$EC2_VPC_ID,Name=cidr-block,Values=$EC2_CIDR_BLOCK" --query "Subnets[].SubnetId" --output text

不能在BASH或shell脚本中以单引号传递变量。这是Shell脚本的基本1-0-1。它需要在变量周围有双引号

例如:

a=2

echo $a
echo "$a"
echo '$a'
输出将是:

2
2
$a

不能在BASH或shell脚本中以单引号传递变量。这是Shell脚本的基本1-0-1。它需要在变量周围有双引号

例如:

a=2

echo $a
echo "$a"
echo '$a'
输出将是:

2
2
$a

John,我在Mac上运行CLI,但它不工作。John,我在Mac上运行CLI,但它不工作。