【问题标题】:Is there a simpler way to list GCP projects **not** in an Organization?有没有更简单的方法来列出组织中**不是**的 GCP 项目?
【发布时间】:2020-09-18 13:28:50
【问题描述】:

我正在寻找一种方法来列出在组织(或文件夹)中的项目。

gcloud projects list ... 返回Project 的列表,并且该项目不属于组织(或文件夹)的唯一明显指示是缺少parent 属性。

我一直无法找到一种方法来--filter 排除没有属性的项目的结果。

我发现了yesno 转换,它是--format 的一部分,结合csv 格式化程序给了我结果,然后我可以grepcut

gcloud projects list \
--format='csv[no-heading,separator=":"](parent.yesno(yes="Y",no="N"),projectId)' \
| grep ^N: \
| cut -d: -f2

但我想要一种仅使用 gcloud 的方法。

【问题讨论】:

  • 嗨@DazWilkin 根据这个解决方案here,以下命令之一应该可以帮助你:gcloud projects list --filter="parent.id.yesno(yes='Yes', no='No')=No"gcloud projects list --filter="parent.id:None"。我在两者都试了一下,它似乎工作正常。你能试试看他们是否对你有帮助吗?
  • 啊哈!第一个 (=No) 有效,但第二个无效。请张贴作为答案。非常感谢。
  • 嗨@DazWilkin 很高兴听到它对您有所帮助!我将其发布为答案。请考虑接受/支持它,因为它对您有所帮助。 :)

标签: gcloud


【解决方案1】:

正如 cmets 中所述,返回没有组织的项目列表的解决方案是运行 gcloud 命令,该命令由父级过滤,使用 yesno 选项。正如在此类似案例here 中所阐明的,可用于实现此目的的命令如下。

gcloud projects list --filter="parent.id.yesno(yes='Yes', no='No')=No"

由于parent是组织下的项目的关系,所以当项目没有父项目时,此命令会过滤。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-31
    • 1970-01-01
    • 2011-10-26
    • 2020-03-19
    • 1970-01-01
    • 2012-01-11
    相关资源
    最近更新 更多