![](/img/trans.png)
[英]Error on setting Environment variables in Google Cloud using the 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.