我正在寻找
gcloud
一行来获取默认项目 ID ($GCP_PROJECT_ID
)。
list
命令给我:
gcloud config list core/project
#=>
[core]
project = $GCP_PROJECT_ID
Your active configuration is: [default]
虽然我只想要以下输出:
gcloud . . .
#=>
$GCP_PROJECT_ID
感谢上面 Tim Swast 的评论,我能够使用:
export PROJECT_ID=$(gcloud config get-value project)
获取项目ID。运行
get-value
命令会打印以下内容:
gcloud config get-value project
#=>
Your active configuration is: [default]
$PROJECT_ID
您还可以运行:
gcloud config get-value project 2> /dev/null
仅打印
$PROJECT_ID
并抑制其他警告/错误。
最简单的方法是使用
--format
标志和 gcloud
:
gcloud config list --format 'value(core.project)' 2>/dev/null
--format
标志适用于所有命令,使您可以完全控制打印内容及其格式。
您可以查看此帮助页面以获取完整信息:
gcloud topic formats
使用 Google Cloud SDK 266.0.0,您可以使用以下命令:
gcloud config get-value project
从 Cloud Shell 或任何安装了 Cloud SDK 的计算机,我们可以使用:
echo $DEVSHELL_PROJECT_ID
如下图所示。
我有一个关于如何设置环境变量 $DEVSHELL_PROJECT_ID 的问题;步骤如下:
project
并设置为某个项目 id,则环境变量 $DEVSHELL_PROJECT_ID 通常会设置为项目 id。project
,我们可以从组合框中选择项目(除了标题 Google Cloud Platform
),这将在 URL 中设置变量 project
。我们可能需要重新启动 Cloud Shell 或刷新整个网页来设置环境变量 $DEVSHELL_PROJECT_ID。gcloud config set project PROJECT_ID
不完全是您指定的 gcloud 命令,但会返回当前配置的项目:
gcloud info |tr -d '[]' | awk '/project:/ {print $2}'
也适用于帐户、区域和区域。
获取默认值
$PROJECT_ID
的直接且简单的方法已在上面回答。
如果您想从
$PROJECT_ID
命令获取 info
,这里有一种方法:
gcloud info --format=flattened | awk '/config.project/ {print $2}'
或:
gcloud info --format=json | jq '.config.project' | tr -d '"'
只要跑:
gcloud info --format={flattened|json}
要查看输出,然后使用
awk
、jq
或类似工具来获取您需要的内容。
gcloud info --format='value(config.project)'