如何使用cli命令,而不是手动使用gcloud init,将GCP(谷歌云平台)账户下当前正在运行的项目修改为其他项目?

Gcloud项目列表将列出在我的帐户上运行的项目。我想使用cli命令将当前项目更改为列表中的任何其他项目。


当前回答

在~/中添加下面的脚本。Bashrc和做,请替换项目名称(projectname)与任何你需要的名称

function s() {
        array=($(gcloud projects list | awk /projectname/'{print $1}'))
        for i in "${!array[@]}";do printf "%s=%s\n" "$i" "${array[$i]}";done
        echo -e "\nenter the number to switch project:\c"
        read project
        [ ${array[${project}]} ] || { echo "project not exists"; exit 2; }
        printf "\n**** Running: gcloud config set project ${array[${project}]} *****\n\n"
        eval "gcloud config set project ${array[${project}]}"
}

其他回答

gcloud config set project $MY_PROJECT_ID

#=>

Updated property [core/project].

您还可以设置环境变量$CLOUDSDK_CORE_PROJECT。

可以使用gcloud命令更改项目:

gcloud config set project <your_project_name>

Gcloud项目列表

获取项目列表。

gcloud配置项目

用于设置默认项目。

您还可以将项目id导出为变量,以便在将来的命令中使用,这有助于避免以下输入的错别字。

MY_PROJECT_ID =(项目号)

echo $ MY_PROJECT_ID

gcloud config set project <PROJECT_ID>

在~/中添加下面的脚本。Bashrc和做,请替换项目名称(projectname)与任何你需要的名称

function s() {
        array=($(gcloud projects list | awk /projectname/'{print $1}'))
        for i in "${!array[@]}";do printf "%s=%s\n" "$i" "${array[$i]}";done
        echo -e "\nenter the number to switch project:\c"
        read project
        [ ${array[${project}]} ] || { echo "project not exists"; exit 2; }
        printf "\n**** Running: gcloud config set project ${array[${project}]} *****\n\n"
        eval "gcloud config set project ${array[${project}]}"
}