簡體   English   中英

谷歌雲 sdk 環境變量

[英]Google cloud sdk environment variables

我想在環境變量中設置項目id,這樣我就不想一次又一次地寫

請幫助我如何在谷歌雲 SDK

當我使用這個命令“export GOOGLE_CLOUD_PROJECT=$(gcloud config get-value core/project)”

它給了我錯誤“導出”不是內部或外部命令、可運行程序或批處理文件。

請參閱@saigeetha-sundar 正確回復。

但是,您似乎已使用gcloud config set core/project設置了項目 ID。 gcloud config set命令的目的是為gcloud屬性設置默認值,這樣您就不需要重復編寫它們(如您所願)。

只是要清楚:

如果core/project價值未設置...

gcloud config unset core/project

如果你沒有在期望它的命令上指定--project=[[YOUR-PROJECT]] ,你會得到錯誤......

注意我以gcloud iam service-accounts list為例。

gcloud iam service-accounts list
ERROR: The required property [project] is not currently set.
You may set it for your current workspace by running:

  $ gcloud config set project VALUE

or it can be set temporarily by the environment variable [CLOUDSDK_CORE_PROJECT]

而且您必須始終指定它,例如:

gcloud iam service-accounts list --project=[[YOUR-PROJECT]]
DISPLAY NAME                     EMAIL
Default compute service account  1234567890123-compute@developer.gserviceaccount.com

但是,如果您設置配置值:

gcloud config set core/project [[YOUR-PROJECT]]

然后任何需要項目值的命令都可以在不指定的情況下工作:

gcloud iam service-accounts list
DISPLAY NAME                     EMAIL
Default compute service account  1234567890123-compute@developer.gserviceaccount.com

我嘗試從我的項目中運行命令,該命令在 Google Cloud shell 中成功運行,但錯誤似乎是 Windows 命令行錯誤,如果您使用 windows 命令來運行“設置”命令創建變量。

您正在嘗試對 Windows 執行 Linux 命令。

從批處理文件執行的 Windows 的等效項是:

gcloud config get-value core/project > project.tmp
for /f "delims=" %%x in (project.tmp) do set GOOGLE_CLOUD_PROJECT=%%x
del project.tmp

將這些行放入批處理文件 (*.bat)。 原因是%% escaping。 如果您在命令提示符中手動輸入,請使用以下示例。 注意從%%%的變化。

在命令提示符下鍵入的 Windows 的等效項:

gcloud config get-value core/project > project.tmp
for /f "delims=" %x in (project.tmp) do set GOOGLE_CLOUD_PROJECT=%x
del project.tmp

命令gcloud config get-value core/project輸出多於一行的文本。 這就是for循環的原因。 for 循環將從project.tmp中讀取每一行並將值分配給 GOOGLE_CLOUD_PROJECT。 最后設置的值是 PROJECT ID。

如果您在批處理腳本中使用此示例,請在gcloud前面添加關鍵字call 原因是gcloud本身就是一個腳本,當它在沒有call的情況下返回時,您的腳本將退出。

call gcloud config get-value core/project > project.tmp

Windows 遺留(古董)語法有時會很痛苦。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM