为什么 PowerShell 找不到 gcloud 命令?

26

我已经更新了Google Cloud SDK(gcloud),包括一般更新:

gcloud components update

仅适用于PowerShell:

gcloud components update powershell

运行gcloud --version会显示:

Google Cloud SDK 122.0.0
beta 2016.01.12
bq 2.0.24
bq-win 2.0.24
bundled-python 2.7.10
core 2016.08.16
core-win 2016.08.05
gcloud
gsutil 4.20
gsutil-win 4.20
powershell 0.1.3
windows-ssh-tools 2016.05.13

当我打开PowerShell并尝试运行Get-GcsBucket时,会出现以下错误:

Get-GcsBucket:无法识别名称为“Get-GcsBucket”的 cmdlet、函数、脚本文件或可操作程序。请检查名称的拼写,如果包含路径,请验证路径是否正确,然后重试。

如何让PowerShell识别gcloud的cmdlet?

1个回答

28

对于大多数人而言,最简单的解决方法是卸载并重新安装Google Cloud SDK。这不会丢失任何配置信息,因此您不需要在此之后运行gcloud initgcloud auth

作为另一种选择,您可以运行安装程序通常会运行的命令。找到您的Google Cloud SDK安装目录(例如%AppData%\..\Local\Google\Cloud SDK%ProgramFiles(x86)%\Google\Cloud SDK)。在该目录中,找到google-cloud-sdk\platform\GoogleCloudPowerShell文件夹。在其中,有一个名为AppendPsModulePath.ps1的脚本。运行它,它将修改当前用户的PSModulePath环境变量。从那时起,新的PowerShell窗口将具有可用的cmdlet。


似乎第一个链接(PSModulePath)已不再可用! - Abdul Niyas P M
@AbdulNiyasPM:嗯...对此我感到抱歉。我会删除第一段。虽然我也要指出,PowerShell cmdlets 在这个阶段基本上已经被弃用了。(我不知道它们是否仍在发布。) - Jon Skeet

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接