AWS에서 특정 리소스를 시작하고 중지하는 Bash 스크립트를 생성하고 싶습니다. 내가 겪고 있는 문제는 이전 명령으로 생성된 특정 리소스 ID가 필요한 리소스를 생성하고 싶다는 것입니다. 목표는 편집하는 대신 단일 스크립트를 실행하여 리소스를 시작할 수 있도록 하는 것입니다.
예를 들어 NAT 게이트웨이를 생성한 후 생성된 NAT 게이트웨이의 ID를 라우팅 테이블 명령에 추가합니다.
$ aws ec2 create-nat-gateway
예제 출력:
"NatGatewayId": "nat-1111111"
$ aws ec2 replace-route --route-table-id rtb-000000000 \
--destination-cidr-block 0.0.0.0/0 --nat-gateway-id "***nat-id-output***"
답변1
O=$(aws ec2 create-nat-gateway | perl -pe 's/.*: //g');
while true ; do
C=$(aws ect describe-nat-gateways --nat-gateway-ids "$O" | grep -c available || true);
if [ $C -gt 0 ] ; then
break;
fi
sleep 3;
done
aws ec2 replace-route --route-table-id rtb-000000000 --destination-cidr-block 0.0.0.0/0 --nat-gateway-id "$O";