gpt4 book ai didi

bash - 获取 AWS 区域的英文名称

转载 作者:行者123 更新时间:2023-11-29 09:29:19 26 4
gpt4 key购买 nike

我找不到使用 AWS CLI 检索区域英文名称的方法。有什么想法吗?

我需要在 Linux 的命令行输出中生成下表所有 AWS 区域的英文名称。

'ap-northeast-1' => 'Asia Pacific (Tokyo)',
'ap-southeast-1' => 'Asia Pacific (Singapore)',
'ap-southeast-2' => 'Asia Pacific (Sydney)',
'eu-central-1' => 'EU (Frankfurt)',
'eu-west-1' => 'EU (Ireland)',
'sa-east-1' => 'South America (Sao Paulo)',
'us-east-1' => 'US East (N. Virginia)',
'us-east-2' => 'US East (Ohio)',
'us-west-1' => 'US West (N. California)',
'us-west-2' => 'US West (Oregon)',
'eu-west-2' => 'EU (London)',
'ca-central-1' => 'Canada (Central)',
'sa-east-1' => 'South America (Sao Paulo)',

我不是 Linux VM 的管理员,无法安装 Java。

最佳答案

更新:AWS 最近改进了他们的文档站点,这导致该解决方案停止工作。我已经更新了下面的代码以使其再次工作。请记住,将来对 AWS 文档站点结构的任何更改都可能导致它无法再次运行。这只是一种解决方法。

根据@jarmod 的评论,这样的事情怎么样:

功能:

  1. 从 AWS 文档中提取 html 页面;将输出传递给下一个命令。
  2. 从输出中删除空行。
  3. 将 RegionName 代码与 html 中的一行匹配,并将接下来的 5 行传递给下一个命令。
  4. 找到带有人类可读区域名称的行。
  5. 将代码和姓名打印在一行中。

示例代码 (BASH):

function getAWSRegionName {
tmp=$(wget -qO- https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/using-regions-availability-zones.partial.html | awk NF | awk -v pat="<p><code class=\"code\">$1" '$0 ~ pat {for(i=0;i<5;i++) {getline; print}}' | awk -F'[<|>]' '/<p>|<\/p>/ {print $3}');
echo "$1 = $tmp";
}

for code in `aws ec2 describe-regions | awk -F'"' '/RegionName/{print $4}'`; do
getAWSRegionName $code;
done

结果:

code-run-result

关于bash - 获取 AWS 区域的英文名称,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49716547/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com