【问题标题】:google cloud project format --labelling谷歌云项目格式——标注
【发布时间】:2021-03-17 04:09:21
【问题描述】:

下面是我在 gcp 中打印名称、项目 ID、组织、空间、区域的脚本。我很确定其他部分很好,但在 --> format("$ORG", ''),format("$SPACE", '') 中出错,因为并非所有项目都有 org、space 并且它们是空的。当它们为空时,如何通过设置为 N/A 来修复它。

  `echo 'project ' $COUNTER 'of' $TOTAL
  echo $project_id
  ORG=$(gcloud projects describe $project_id --format="get(labels.organization)")
  echo $ORG
  SPACE=$(gcloud projects describe $project_id --format="get(labels.space)")
  echo $SPACE
  gcloud compute instances list --project $project_id --format="csv(
   name,
   format("$ORG", ''),
   format("$SPACE", ''),
   zone.basename()
)" | awk 'NR>1' | sed s/$/,$project_id/
   >> $FILE

【问题讨论】:

    标签: google-cloud-platform gcp-ai-platform-training


    【解决方案1】:

    试试这个:

    `echo 'project ' $COUNTER 'of' $TOTAL
    echo $project_id
    ORG=$(gcloud projects describe project_id --format="get(labels.organization)")
    if [ -z "$ORG" ]
    then
            ORG="N/A"
    fi
    echo $ORG
    SPACE=$(gcloud projects describe project_id --format="get(labels.space)")
    if [ -z "$SPACE" ]
    then
            SPACE="N/A"
    fi
    echo $SPACE
    gcloud compute instances list --project $project_id --format="csv(
       name,
       format("$ORG", ''),
       format("$SPACE", ''),
       zone.basename()
    )" | awk 'NR>1' | sed s/$/,$project_id/
       >> $FILE
    

    【讨论】:

    • 感谢塞尔吉乌斯。我正在终端中获取输出,而不是我想要的 csv。我该如何解决?
    • 您能否举例说明您希望输出文件的外观?
    • 这是在你的代码 sn-p 上面 #!/usr/bin/env bash PROJECTS=$(gcloud projects list --format='get(projectId)') FILE="instances .csv" rm $FILE touch $FILE START_TIME=$SECONDS COUNTER=1 TOTAL=0 echo 'name,organization,space,zone,machine_type,preemptible,internal_ip,external_ip,status,service_account,project_id' >> $FILE for project_id in $PROJECTS do ((TOTAL=TOTAL+1)) done for project_id in $PROJECTS do
    • 我将获取名称、组织、空间、区域、机器类型、抢占式、内部 IP、外部 IP、状态、服务帐户、项目 ID 作为 csv 中的每一列,并且我的脚本应在通过抓取后在相应列中打印数据我的 gcp。
    • 您可以使用gcloud compute instances list --format="csv(name,organization,space,zone,machine_type,preemptible,internal_ip,external_ip,status,service_account,project_id)",但并非所有这些参数都可以使用此命令获取。您可以在此处找到有关此命令的更多信息 - cloud.google.com/sdk/gcloud/reference/compute/instances/list
    猜你喜欢
    • 2017-09-21
    • 1970-01-01
    • 2019-10-31
    • 2016-08-23
    • 2018-10-16
    • 1970-01-01
    • 2017-10-30
    • 2020-11-11
    • 2016-06-18
    相关资源
    最近更新 更多