wol*_*avi 3 batch-file google-cloud-sdk
所以我有这个
.bat
文件:
@echo off
cd C:\Users\user\Downloads
gcloud auth activate-service-account --key-file=keyFileName.json
gcloud auth print-access-token
pause
Run Code Online (Sandbox Code Playgroud)
在第一个gcloud
命令期间
,它会突然中途使命令提示符崩溃,但是当我将每一行手动复制并粘贴到与我试图cd
在
.bat
文件中的位置相同的位置的命令提示符中时
,它会起作用......知道为什么? 顺便说一下,我在 Windows 10 上。
在 Google 上搜索,我在Github和Stackoverflow上发现了两个相关问题。
Github 的解决方案是使用 python,这不是我需要的,而 Stackoverflow 的解决方案没有人帮助他/她......
谢谢
在运行某些 gcloud 命令时,他们期望自己可能与用户进行交互。此外,它们还可能与当前的命令行处理器(Windows 上的 CMD)交互。这可能会导致命令行处理器过早结束。一种解决方案是在命令行处理器自己的本地/嵌套实例中运行脚本化的 gcloud 命令。
如果今天,您的脚本包含:
gcloud ... some command parameters ...
Run Code Online (Sandbox Code Playgroud)
将其替换为:
cmd /c gcloud ... some command parameters ...
Run Code Online (Sandbox Code Playgroud)
这将导致 gcloud 命令在其自己的嵌套环境中运行,该环境不会干扰顶级(脚本化)环境。