如何在批处理文件中测试当前的驱动器号?

Jim*_*Del 17 windows batch-file

我正在尝试编写一个批处理文件,该文件采用正在运行批处理文件的驱动器号,并使用它作为IF语句.如果字母是M:例如,它将跳转到标签:mSection.

这甚至可能吗?

Dav*_*ray 26

您可以使用%~d0来获取驱动器号.像这样的东西:

IF "%~d0"=="M:" CALL :mSection
Run Code Online (Sandbox Code Playgroud)

  • 但是,这将使用批处理所在的驱动器号.如果您将驱动器切换到Z:并执行M:\ blah.cmd,那么您仍然会在批处理中获得"M:".您可以使用%cd%伪变量来获取当前工作目录(如果这是您想要的)(并且您的问题听起来像您一样).如果你需要那里的驱动器号,你只需将%cd:~0,2%与"M:"进行比较.否则,您可以使用goto%cd:~0.1%部分跳转到相应的部分,如果您希望稍后为不同的驱动器轻松扩展您的abtch. (9认同)