1
我正在修改用於備份的批處理文件。當它運行時,它會創建一個新的shadowcopy,裝載它,備份它應該的內容,並將其卸載。我想要做的是刪除它創建的影子拷貝。我不會因爲法庭原因刪除現有的shadowcopys。以下是我有和問題的代碼部分。使用批處理文件刪除一個ShadowCopy
:DeleteNewSCopy
REM : Locates then removes the last created shadowcopy.
SET ShadowID=
FOR /F "usebackq tokens=1,2* delims=:" %%A IN (`FINDSTR /I /C:"Shadow Copy ID:" %TempFile%`) DO SET ShadowID=%%B
IF NOT "%ShadowID%" == "" (
REM : Last ShadowCopy ID was found, Nuke it.
vssadmin delete shadows /Shadow=%ShadowID%
) ELSE (
ECHO No ShadowCopy ID found.
)
GOTO :EOF
FOR行似乎工作正常。當我在運行時回聲出%ShadowID時%,我得到:
ShadowID: {4fcb026a-08fe-4a34-b198-da7560db57bf}
但刪除影拷貝行失敗:
Error: Invalid option value.
在命令行中我可以設置ShadowID時有相同的字符串並運行命令沒有問題,所以我好像它應該在批處理文件中工作。
任何援助將不勝感激。