我查看了我的问题的可能解决方案,但我担心我的知识水平不允许我正确地提出问题。
我的USB驱动器名为CRUISER,我希望通过主机上的批处理文件运行几个应用程序。由于我不知道驱动器号是什么,我如何在批处理文件中按名称解析驱动器?
以下是我当前主机端批处理文件中的内容。 (你可以通过REM和暂停语句看到,我一直在测试....)
REM Start Portable Apps and Signup Shield Suite
cd C:\Documents and Settings\%USERNAME%\Local Settings\Application Data\Temp\SignupShield\
del signupshieldportable.exe
REM dir
REM pause
cd \
%CRUISER%
REM dir
REM pause
start StartPortableApps.exe
cd PortableApps
REM dir
REM pause
start SignupShieldPortable.exe
rem pause
我想要做的就是插入主机上的驱动器,运行基于主机的批处理文件,并让它找到我的CRUISER驱动器,无论分配的驱动器号如何,并运行这两个应用程序。我知道我可以将批处理文件放在USB驱动器上并从那里运行它,就像我这样做的那样。现在这只是我需要解决的挑战!
感谢您的帮助
答案 0 :(得分:1)
将cruiser.txt
放在USB驱动器的根目录中并使用以下代码:
@echo off
for %%a in (d e f g h i j k l m n o p q r s t u v w x y z) do if exist "%%a:\cruiser.txt" set "drv=%%a:"
答案 1 :(得分:0)
您可以尝试将USB上的批处理文件命名为独特的,不可能存在于任何其他驱动器上,例如: foobarsaysblah.bat
然后,上面的批处理可以启动您想要的两个应用程序。
然后在您的主机bat文件中,您只需将大多数驱动器号和输出错误的行添加到nul,例如:
d:\foobarsaysblah.bat 2>nul
e:\foobarsaysblah.bat 2>nul
f:\foobarsaysblah.bat 2>nul
g:\foobarsaysblah.bat 2>nul
h:\foobarsaysblah.bat 2>nul
i:\foobarsaysblah.bat 2>nul
不是很优雅,但完成工作......