gpt4 book ai didi

gcloud - 我想在脚本中使用`gcloud`的输出,但是格式改变了。我该怎么办?

转载 作者:行者123 更新时间:2023-12-04 02:52:05 26 4
gpt4 key购买 nike

我在脚本中使用命令gcloud compute instances list,但担心确切的输出格式不是静态的。我该怎么办?

最佳答案

您应该使用大多数--format命令可用的gcloud标志。

例如,如果您想获得与当前格式(截至撰写本答案时)完全相同的输出,则可以运行:

$ gcloud compute instances list --format="table(
name,
zone.basename(),
machineType.basename(),
scheduling.preemptible.yesno(yes=true, no=''),
networkInterfaces[0].networkIP:label=INTERNAL_IP,
networkInterfaces[0].accessConfigs[0].natIP:label=EXTERNAL_IP,
status
)"


即使命令的默认输出发生了变化,此命令的输出也不会在版本之间更改(除非格式化的资源已更改;这应该很少)。1在命令中显示资源的默认格式尚在进行中。2

您还可以为机器可读的输出指定类似YAML或JSON的格式:

$ gcloud compute instances list --format=yaml
$ gcloud compute instances list --format=json


请注意,此输出包含的信息比此命令的缺省输出中提供的信息多得多。这是构造自定义格式时必须使用的信息。

CSV是另一种格式选项。与 table一样,它也需要一个投影-有关如何打印每一行的规范。3

$ gcloud compute instances list --format="csv(name,zone,status)"
name,zone,status
example-instance,us-central1-f,RUNNING
...


有关 gcloud格式化功能的更多信息,请参见 gcloud topic formatsgcloud topic projections的输出。




您可以通过运行 gcloud compute instances list --format=flattened来查看所有可能的字段。
对于某些命令,例如 gcloud beta test android locales list,您可以传递 --verbosity=INFO标志并查找 INFO: Display format
这是因为CSV数据无法像JSON或YAML一样嵌套,并且正在打印的数据结构可能会嵌套。

关于gcloud - 我想在脚本中使用`gcloud`的输出,但是格式改变了。我该怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34600588/

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