Sco*_*Sco 2 bash shell-script quoting variable
在下面的脚本中,我似乎无法在第二个语句中使 $var1 展开。我试过$var1, ${var1},echo $var1和'$var1'。它在几组引号和括号内,我想这就是导致问题的原因。有任何想法吗?
#!/bin/bash
# Get the AutoScalingGroupName for the NameNode ASG
var1=$(aws cloudformation list-stack-resources --stack-name abc123 | jq '.StackResourceSummaries[] | select(.ResourceType=="AWS::AutoScaling::AutoScalingGroup")' | jq '.PhysicalResourceId' | tr -d '"' | grep nn); echo $var1
var2=$(aws autoscaling describe-auto-scaling-instances | jq -r '.AutoScalingInstances[] | select(.AutoScalingGroupName == "$var1") | select(.AvailabilityZone == "us-east-1a") .InstanceId'); echo $var2
Run Code Online (Sandbox Code Playgroud)
单引号中的变量不展开。尝试这个...
var2=$(aws autoscaling describe-auto-scaling-instances | jq -r '.AutoScalingInstances[] | select(.AutoScalingGroupName == "'"$var1"'") | select(.AvailabilityZone == "us-east-1a") .InstanceId'); echo $var2
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
2581 次 |
| 最近记录: |