中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-08-11 23:02
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 怎么获取盘符卷标? 查看 1,148 回复 5
楼 主 怎么获取盘符卷标? 发表于 2010-09-02 16:43 ·  中国 广东 广州 鹏博士宽带
新手上路
积分 8
发帖 8
注册 2010-08-25 19:18
15年会员
UID 172990
性别 男
状态 离线
怎么获取盘符卷标?
并把获得的卷标设置为变量?
以便后面判断...
2 发表于 2010-09-03 19:05 ·  中国 四川 成都 电信
初级用户
积分 21
发帖 21
注册 2008-10-18 17:51
17年会员
UID 128679
性别 男
状态 离线
获取C盘的卷标并保存到变量Label中:
chcp 936
for /f "skip=1 tokens=2" %%i in ('vol C:') do set "Label=%%i"
3 发表于 2010-09-04 01:07 ·  中国 广东 广州 鹏博士宽带
新手上路
积分 8
发帖 8
注册 2010-08-25 19:18
15年会员
UID 172990
性别 男
状态 离线
楼上的取的是序列号的!

@echo off
for /f "tokens=4" %%i in ('vol E:') do set Label=%%i
echo %label%
pause

这样倒是取得!但如果卷标有空格的那后来的就取不了了!晕...
4 发表于 2010-09-05 12:09 ·  中国 上海 电信
新手上路
积分 1
发帖 1
注册 2010-09-04 19:29
15年会员
UID 173600
性别 男
状态 离线
@echo off
for /f "tokens=5,*" %%i in ('vol C:') do set Label=%%j & goto next
:next
echo %Label%
pause
5 发表于 2010-09-05 13:35 ·  中国 陕西 西安 联通
铂金会员
★★★★
积分 5,212
发帖 2,478
注册 2007-02-08 23:39
19年会员
UID 79003
性别 男
状态 离线
delims...
S smile 微笑,L love 爱,O optimism 乐观,R relax 放松,E enthusiasm 热情...Slore
6 发表于 2010-09-06 23:27 ·  中国 广东 广州 鹏博士宽带
新手上路
积分 8
发帖 8
注册 2010-08-25 19:18
15年会员
UID 172990
性别 男
状态 离线
@echo off
for /f "tokens=4,*" %%i in ('vol e:') do set Label=%%i %%j & goto next
:next
echo %Label%
pause
解决了!
论坛跳转: