【发布时间】:2017-11-28 01:59:08
【问题描述】:
我正在尝试从安装在 Windows 10 上的 bash shell 运行 glcoud.cmd。在 cmd 提示符下可以识别 Glcoud,但在“Windows 10 的 bash”中无法识别。
基于此线程,我创建了一个带有此条目的 .bashrc 文件 (Can I use gcloud in Git Bash on Windows?):
PATH=$PATH:/mnt/c/Users/username/AppData/Local/Google/Cloud SDK/google-cloud-sdk/bin
glcoud.cmd 是一个 Windows 命令行脚本。似乎该路径已被 bash 识别,因为当我运行 gcloud.cmd 时它会返回
/mnt/c/Users/***/AppData/Local/Google/Cloud SDK/google-cloud-sdk/bin/gcloud.cmd: line 1: @echo: command not found
/mnt/c/Users/***/AppData/Local/Google/Cloud SDK/google-cloud-sdk/bin/gcloud.cmd: line 2: rem: command not found
/mnt/c/Users/***/AppData/Local/Google/Cloud SDK/google-cloud-sdk/bin/gcloud.cmd: line 7: syntax error near unexpected token `newline'
/mnt/c/Users/***/AppData/Local/Google/Cloud SDK/google-cloud-sdk/bin/gcloud.cmd: line 7: `rem <cloud-sdk-cmd-preamble>'
我也尝试了以下命令,因为 CYGWIN 似乎会自动识别 bat 文件
cmd.exe gcloud.cmd
cmd gcloud.cmd
cmd gcloud
cmd /c gcloud
cmd /c glcoud.cmd
以上所有命令都返回:
找不到命令“cmd”,您的意思是: 来自包“diffutils”的命令“cmp”(主) 来自包“wml”(宇宙)的命令“wmd” 来自包“devscripts”的命令“dcmd”(主) 来自包“mtools”的命令“mcd”(主) 来自包'core-network-daemon'(universe)的命令'vcmd' 来自包“openjdk-7-jdk”(主)的命令“jcmd” 来自包“tcm”(宇宙)的命令“tcmd” 来自包“config-manager”(universe)的命令“cm” 来自包“libconfig-model-perl”(universe)的命令“cme” 来自包“am-utils”(宇宙)的命令“amd” 来自包“renameutils”(宇宙)的命令“icmd” 来自包“mtools”的命令“mmd”(主) 来自包“renameutils”(universe)的命令“qcmd”
如何在 bash 上运行 windows 命令?
谢谢
保罗
【问题讨论】:
-
我没有在 Windows 上使用过 bash,所以不知道这是否可行,但是您是否尝试过
cmd /c gcloud或类似的,所以gcloud命令将在cmdshell 中执行而不是直接在bashshell 中? -
是的.. 我只是在想这个。似乎 CYGWIN 在本机解释器 (stackoverflow.com/questions/787522/…) 中自动运行 .bat 文件。我试过以下 cmd.exe gcloud.cmd; cmd gcloud.cmd; cmd gcloud; cmd /c gcloud; cmd /c glcoud.cmd
-
人们很难在 cmets 中找到信息,而且它们的格式不正确,相反,请edit 您的问题包含更新的尝试,包含确切的信息可能会有所帮助可用时的错误消息,而不是“它不起作用”的变体。
-
您是否尝试过使用 cmd.exe 的完整路径?如
/mnt/c/windows/system32/cmd.exe /C gcloud.cmd您可能还希望将 /mnt/c/windows/system32/ 包含到您的 PATH 中