Board logo

标题: 怎么样在dos批处理中得到最后一个盘的盘符? [打印本页]

作者: wfyinghun     时间: 2007-4-13 21:29    标题: 怎么样在dos批处理中得到最后一个盘的盘符?

我想写一个批处理程序,但需要知道最后一个盘的盘符,请问有什么方法或者工具得到最后一个盘的盘符?(都是fat32文件系统)!
      

作者: bjsh     时间: 2007-4-14 22:08
如果是为了得到最后一个盘(包括移动硬盘;光盘等等)可以用

  Quote:

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. wmic logicaldisk get name,DriveType | more +1 >>test.txt
  4. (for /f "tokens=1,2" %%a in (test.txt) do set t=%%b) && echo !t!
  5. del test.txt
  6. pause
         BJSH发表于:  2007-04-14  09:03

如果只是为了得到最后一个硬盘

  Quote:

  1. @echo off
  2. setlocal enabledelayedexpansion
  3. wmic logicaldisk get name,DriveType | more +1 >>test.txt
  4. (for /f "tokens=1,2" %%a in (test.txt) do if "%%a"=="3" set t=%%b) && echo !t!
  5. del test.txt
  6. pause
         BJSH发表于:  2007-04-14  09:02

[ Last edited by bjsh on 2007-4-14 at 09:13 AM ]
作者: llztt1     时间: 2007-4-14 22:19
为什么不看看人家标题,人家说是DOS批处理...

配合DREAY命令可以循环检测出最后一个可用盘符
作者: bjsh     时间: 2007-4-14 22:21
确实确实;
呵呵
作者: wfyinghun     时间: 2007-4-15 00:37    标题: Thanks! 等待ing

如果只是为了得到硬盘的最后一个盘符(不包括光盘和移动硬盘),那该怎么样写批处理啊?
作者: wfyinghun     时间: 2007-4-15 00:39    标题: DREAY怎么用啊

还有3楼大侠,DREAY怎么样用啊,能说的具体点吗?
作者: cchessbd     时间: 2007-4-15 07:30


  Quote:
Originally posted by wfyinghun at 2007-4-15 00:39:
还有3楼大侠,DREAY怎么样用啊,能说的具体点吗?

dready [drive:]  [/w]

加 /w可检测是否可写。
可根据返回值设置为环境变量。
作者: llztt1     时间: 2007-4-15 08:49
配合其他小命令使用,譬如drvtypes的结果:
A: Removable Drive
B: Removable Drive
C: Fixed Drive
D: Fixed Drive
E: Fixed Drive
F: Fixed Drive
G: Fixed Drive
H: Fixed Drive
I: Fixed Drive
J: Fixed Drive
K: CD/DVD Drive
L: CD/DVD Drive
M: Network Drive
N: Network Drive
O: Network Drive
P: Network Drive
Q: Network Drive
R: Network Drive
S: Network Drive
X: SUBSTed Drive
Z: RAM Drive
批处理可以参考用
drvtypes | find /i  "fixed" | find /i "network" >drv.txt
没试验映射的盘符算什么,要不用排除法更好些??
下面就可以使用STRINGS循环检测drv.txt里的盘符,使用
dready %drv% /w |if errorlevel 2 goto nextone

具体的实现,相信很容易了,我就不写了
作者: Wengier     时间: 2007-4-15 13:51
如果是要得到最后一个硬盘的盘符的话,最简单的方法是用BDRV和LMOD工具,如下面这个:

BDRV|LMOD /L* SET DRV=[$1]>LDRV.BAT
LDRV.BAT

BDRV和LMOD可以在MS-DOS 7.1完整版中找到。
作者: cctv8068     时间: 2008-4-21 18:56
NTFS 盘在 DOS 下无法被识别呢
作者: jia332     时间: 2008-4-23 10:42
DREAY,如drvtypes,这些工具在那里能下载到阿〉?
作者: chishingchan     时间: 2008-4-24 05:36    标题: 原创:

获得除NTFS格式外的最后盘符
@echo off
set num=26
:check
bdrv|nset lastpart=$%num%
count num -
if "%lastpart%"=="" goto check
echo %lastpart%
pause
:end
附件下载:
http://upload.cn-dos.net/img/325.rar