我正在尝试编写批处理脚本来查找特定的挂载设备。 我在windows 7中。
我知道该设备将有文件夹驱动器:习惯所以我想看看所有possabilitIEsfind一个设备与这条path
这是我到目前为止
@echo off setLocal Enabledelayedexpansion for %%d in (cdefghijklmnopqrstuvw xyz) do ( if exist %%d:custom ( ECHO Device Found : %%d ) )
这不工作,它认为它存在每个驱动器号..所以我看到“设备find”每个单个驱动器号。 这是为什么? 我是否在谈论这个错误? 如何find根目录上具有“自定义”文件夹的驱动器号?
打开一个文件并等待它退出/退出,然后继续batch file
如何在使用netcat时根据请求有条件地做出响应
在特定驱动器的windows中的磁盘大小
windows命令:如何使用chdir将当前目录推入以后popup?
如何从windows Batch子例程调用SCons?
谢谢,
斯蒂芬妮
如何合并两个批处理脚本,将它们放到一个batch file中,并按降序运行
将文件输出存储到variables中
windows批处理:date格式variables打印不正确
batch file命令在新窗口中打开不同的命令
从windows执行远程.sh文件
在路径的末尾添加 :
IF EXIST %%d:custom (...)
在for语句中使用fsutil fsinfo drives for而不是驱动器号的静态列表。
for /f "tokens=1,*" %%i in ('fsutil fsinfo drives') do ( :: work with %%j here )
但是,如果将驱动器号发送给没有介质的设备,则可能仍会出现错误。 无论哪种方式,检查如:
if not exist O: @echo test
对我来说工作得很好(有和没有)。 驱动器在我的系统上不存在,所以没有被删除时没有输出。
有点复杂,但这是避免在Win7上阻止错误的唯一解决方案:
for /f "tokens=3" %%d in ('echo List Volume ^| disKPART ^| findstr "Healthy Unusable"') do ( if exist %%d:custom echo Device found )
我发现另一种方法是使用vol命令+检查ERRORLEVEL (如果== 1驱动器未安装):
for /f "tokens=3" %%d in ('echo List Volume ^| disKPART ^| findstr "Healthy Unusable"') do ( vol %%d: if !ERRORLEVEL!==0 if exist %%d:custom echo Device found )
注:在WinXP disKPART将不会看到可移动驱动器…
@ECHO OFF :CICLO CLS&ECHO.&ECHO VER ESTADO UNIDADES CON WMIC SET "DVF=" FOR /F "tokens=1,*" %%A IN ('wmic logicaldisk get caption^,description ^| FIND ":"') DO ( Vol %%A >nul 2>&1 && ( CALL SET "DVF=%%DVF%% %%A"& ECHO %%A ^| ON. %%B) || ( ECHO %%A ^| OFF. %%B ) ) ECHO DEVICEFOUND: %DVF% TIMEOUT /T 5 >Nul GOTO:CICLO
尝试这个:
if exist %%d:nul ( echo Device found %%d )
这适用于硬盘和pendrive:
@echo off for %%? in (cdefghijklmnopqrstuvw xyz) do ( dir %%?: > nul 2>nul if exist %%?:custom echo Device found(s): %%?: )
PS:运行WinXP
总结以上是内存溢出为你收集整理的批处理脚本查找挂载设备的驱动器号全部内容,希望文章能够帮你解决批处理脚本查找挂载设备的驱动器号所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)