Batch file 如果批处理文件是从驱动器运行的,则停止批处理文件

Batch file 如果批处理文件是从驱动器运行的,则停止批处理文件,batch-file,Batch File,嗨,如果批处理文件是从特定驱动器运行的,我想停止它。我试过这样的方法,但不起作用。如果有人有更好的主意,我将不胜感激 if %CD%=="^.*C:\" (goto :CDrive) 其中:CDrive是一条错误消息,表示用户试图从错误的驱动器运行它 干杯 Chris您可以使用子字符串检查: if "%CD:~0,2%"=="C:" goto CDrive 另一个选项可能是,您只需显式设置所需的驱动器: pushd X: 或者使用完整路径而不是相对路径。我甚至不知道为什么您会期望这样做。最

嗨,如果批处理文件是从特定驱动器运行的,我想停止它。我试过这样的方法,但不起作用。如果有人有更好的主意,我将不胜感激

if %CD%=="^.*C:\" (goto :CDrive)
其中:CDrive是一条错误消息,表示用户试图从错误的驱动器运行它

干杯
Chris

您可以使用子字符串检查:

if "%CD:~0,2%"=="C:" goto CDrive
另一个选项可能是,您只需显式设置所需的驱动器:

pushd X:

或者使用完整路径而不是相对路径。

我甚至不知道为什么您会期望这样做。最后的反斜杠至少会导致正则表达式无效。更不用说
cmd
在任何地方都不支持正则表达式。