此命令在 Cygwin 控制台中有效:
me@WDX5CG625Q ~
$ cd "/cygdrive/c/Program Files/apache Software Foundation/Tomcat 8.5"
mw@WDX5CG62Q /cygdrive/c/Program Files/apache Software Foundation/Tomcat 8.5
$
但不在.bat 文件中:
tom.bat:
cd "/cygdrive/c/Program Files/Apache Software Foundation/Tomcat 8.5"
输出:
me@WDX5CG625Q ~
$ ./tom.bat
C:\cygwin64\home\me>cd "/cygdrive/c/Program Files/Apache Software Foundation/Tomcat 8.5"
The system cannot find the path specified.
me@WDX5CG625Q ~
$
还尝试过:
- 有
#!/bin/bash
- 不带引号
- 不带引号和空格转义
- 带引号和空格转义
总是收到“无法找到”的消息。
答案1
当你.BAT
从 Cygwin 运行文件时,它会以批处理文件的形式运行,使用 Windows 命令解释器(CMD.EXE
又称“命令提示符”)。因此
- 如果您想要运行批处理文件,主要使用 Windows CLI 命令,请使用 Windows 版本的路径名: 。如果您使用而不是,
C:\Program Files\apache Software Foundation\Tomcat 8.5
可能也可以,就像在普通的 Windows 命令提示符中一样。不用担心大小写。/
\
- 如果您想运行 Unix shell 脚本,请不要使用该
.BAT
扩展。