1. 程式人生 > >mountvol命令修改磁碟分割槽/光碟機的碟符

mountvol命令修改磁碟分割槽/光碟機的碟符

在linux下可以通過mount/umount 輕鬆掛載和解除安裝外部儲存裝置到一個掛載點,而在windows系統總同樣也存在類似的命令就是:mountvol

Mountvol
建立、刪除或列出卷的裝入點。Mountvol 是一種不需要驅動器號而連線卷的方式。
語法:
mountvol [Drive:]Path VolumeName
mountvol [Drive:]Path /d
mountvol [Drive:]Path /l
mountvol [Drive:]Path /p
mountvol /r
mountvol /n
mountvol /e
mountvol Drive:/s


引數:
[Drive:]Path
    指定裝入點將駐留其中的現有 NTFS 目錄資料夾。 
VolumeName
    指定裝入點目標卷的卷名。該卷名結構為 \\?\Volume{GUID}\,其中 {GUID} 為全域性唯一識別符號 (GUID)(例如,\\?\Volume\{2eca078d-5cbc-43d3-aff8-7e8511f60d0e}\)

。 
/d
    從指定資料夾中刪除卷裝入點。 
/l
    列出指定資料夾裝入的卷名。 
/p
    從指定的目錄中刪除卷裝入點、解除安裝基本卷、使基本卷離線,使其不可安裝。如果其他過程正在使用該卷,則 mountvol 將在解除安裝該卷之前關閉所有開啟的控制代碼。使用 /p 解除安裝的卷將在卷列表中作為 NOT MOUNTED UNTIL A VOLUME MOUNT POINT IS CREATED(建立卷裝入點後才安裝)列出。如果該卷不只一個裝入點,則在使用 /p 之前請使用 /d 刪除其他裝入點。可通過指派卷裝入點而使基本卷可以重新安裝。 
/r
    刪除系統中不再存在的卷的裝入點目錄和登錄檔設定。這將防止以前在系統中的卷自動被裝入,並防止將在添加回系統時被授予以前的卷裝入點。 
/n
    禁用新基本卷的自動裝入。新卷新增到系統時不會自動裝入。 
/e
    重新啟用新基本卷的自動裝入。 
/s
    僅限於基於
    Itanium計算機。裝入指定驅動器上的
    EFI 系統分割槽。 
/?
    在命令提示符下顯示幫助。 

註釋

    * 如果用完了可用的驅動器號,則裝入無驅動器號的本地卷。
    * 如果希望不重新格式化或更換硬碟而擴展卷空間,可向另一卷中新增裝入路徑。
    * 如果使用一個具有多條裝入路徑的卷,其好處是可以使用單個驅動器號(如 C:)訪問所有的本地卷。雖然您可以裝入本地卷並且為它們指派驅動器號,但是不需要記住哪個卷對應哪個驅動器號。簡單而言就是可以把其他的分割槽都掛載到C:的一個目錄路徑下面,建立和Linux類似的檔案目錄結構。

以下是使用MountVol自動檢測並修改光碟機的碟符(掛載點)的一個例子,使用前先用mountvol /l 列出當前所有的裝載點,找到光碟機所對應的檔案卷的GUID,修改下面指令碼對應的引數就可以使用了。

initialization.cmd

@echo off
:_Begin
echo 正在初始化,請等待...
mountvol G:\ /L>nul
if errorlevel 1 goto _load
goto _unload

:_load
mountvol D:\ /D
if errorlevel 1 goto _loaderror

mountvol G:\ \\?\Volume{此處為光碟機卷的GUID}\
if errorlevel 1 goto _loaderror

echo ===================================
echo 成功掛載!!
echo ===================================
goto _end

:_loaderror
echo ***********************************
echo 掛載出現錯誤!請檢查...
echo ***********************************
goto _end

:_unload
mountvol G:\ /D
if errorlevel 1 goto _unloaderror

mountvol D:\ \\?\Volume{此處為光碟機卷的GUID}\
if errorlevel 1 goto _unloaderror

echo ===================================
echo 成功解除安裝!!
echo ===================================
goto _end

:_unloaderror
echo ***********************************
echo 卸載出現錯誤!請檢查...
echo ***********************************

:_end
pause