と言っても、–filtersオプションで、対象のAMIをnameで絞って、
–queryオプションで最新のID取得する感じです。
aws ec2 describe-images --region ap-northeast-1 --owners amazon --filters "Name=name,Values=amzn-ami-hvm-*-gp2" --query 'reverse(sort_by(Images,&CreationDate))[0].ImageId' --output text
ちなみに出力結果のダブルクォート消すために"--output text"
もつけてます。
「EC2のインスタンスメタデータからリージョンを取得」と合わせれば
curl -s http://169.254.169.254/latest/meta-data/placement/availability-zone | sed -e 's/.$//'
コマンドを実行するEC2が起動しているリージョンの、
最新の”Amazon Linux AMI”(gp2)のIDを取得することができます。
(どのリージョンでも同一のコマンドで実現できます)
ちなみにAZ(ap-northeast-1a)を取得して、最後の文字をカットして、
それをリージョンとしています。