Board logo

标题: [文本处理] [已解决]如何通过Wmic获取最后盘符? [打印本页]

作者: e98123    时间: 2018-3-9 09:55     标题: [已解决]如何通过Wmic获取最后盘符?

本帖最后由 e98123 于 2018-3-9 20:20 编辑
  1. @echo off
  2. for /f "skip=1" %%i in ('Wmic LogicalDisk Where "DriveType=3" Get Name') do set d=%%i
  3. echo %d%
  4. pause
复制代码
直接运行 Wmic LogicalDisk Where "DriveType=3" Get Name,会获得:
Name
C:
D:
E:

注意:其中“E:”的下一行,或者说是最后一行估计是一个空行
最终运行结果提示的是:ECHO处于关闭状态
我的目的是想获取结果为““E:””,即是最后的盘符。
作者: ivor    时间: 2018-3-9 10:36

本帖最后由 ivor 于 2018-3-9 18:27 编辑

回复 1# e98123
  1.     @echo off
  2. for /f "skip=1" %%i in ('Wmic LogicalDisk Where "DriveType=3" Get Name') do echo %%i | find ":" && set d=%%i
  3. echo %d%
  4. pause
复制代码

作者: WHY    时间: 2018-3-9 16:23

  1. for /f %%i in ('wmic LogicalDisk where "DriveType='3'" get Name^|find ":"') do set "Name=%%i"
  2. echo;%Name%
复制代码

作者: /zhqsystem/zhq    时间: 2018-3-9 20:04

本帖最后由 /zhqsystem/zhq 于 2018-3-9 20:07 编辑

给你个超牛方案,在用for加载一次,for会过滤空行
示例:
for /f "delims=" %%i in ('wmic os get * /value')do for /f "delims=" %%i in ("%%i")do echo,%%i




欢迎光临 批处理之家 (http://www.bathome.net/) Powered by Discuz! 7.2