Board logo

标题: 小小问题,弱弱的请教下!高手快来吧,等的好辛苦! [打印本页]

作者: skymanginn     时间: 2008-8-7 23:23    标题: 小小问题,弱弱的请教下!高手快来吧,等的好辛苦!

C盘 NTFS格式 有个目录 C:\VD
我要把D盘 装入 C:\VD
这个批处理怎么写?

资料:
       mountvol /l >c:\vd.txt

C:\VD.TXT 内容:

创建、删除或列出卷装载点。

MOUNTVOL [drive:]path VolumeName
MOUNTVOL [drive:]path /D
MOUNTVOL [drive:]path /L

    path        指定装入点将驻留的现有 NTFS 目录。
    VolumeName  指定装入点的目标的卷名称。
    /D          从指定的目录中删除卷装入点。
    /L          列出指定目录的已装入的卷名称。

当前装载点的 VolumeName 可能值为:

    \\?\Volume{ef7fa226-5089-11dd-8ee4-806d6172696f}\
        C:\

    \\?\Volume{ef7fa227-5089-11dd-8ee4-806d6172696f}\
        D:\

    \\?\Volume{ef7fa228-5089-11dd-8ee4-806d6172696f}\
        E:\


然后 执行 mountvol c:\vd\ \\?\Volume{ef7fa227-5089-11dd-8ee4-806d6172696f}\

注:绿色部分格式始终一样,就是VolumeName的内容不一样而已,我就想提取 D盘的Volume的值,然后执行 mountvol c:\vd\ \\?\Volume{ef7fa227-5089-11dd-8ee4-806d6172696f}\
作者: HAT     时间: 2008-8-7 23:51

@echo off
set SrcFile=C:\VD.TXT
set DstRow=        D:\
set PriRow=""
for /f "tokens=1* delims=" %%a in ('findstr .* "%SrcFile%"') do (
  if "%%a" neq "%DstRow%" (
    set PriRow=%%a
  ) else if "%%a" equ "%DstRow%" (
    goto :show
  )
)
:show
set PriRow=%PriRow: =%
mountvol c:\vd\ %PriRow%
[ Last edited by HAT on 2008-8-7 at 11:52 PM ]
作者: skymanginn     时间: 2008-8-8 00:10
很强悍,就是看不懂。。 哎,不知道什么时候才能懂。。。。。

谢谢了,非常感谢!
作者: HAT     时间: 2008-8-8 00:15
把置顶帖看完就懂了