我一直在从 Microsoft 到博客文章的各个站点上阅读大量有关 Diskshadow 的文档,他们都建议这样做:
# diskshadow script commands
set verbose on
set context persistent
begin backup
add volume D: alias DataVol
create
expose %DataVol% Z:
exec <somebackupscripthere.cmd>
end backup
delete shadows exposed Z:
exit
我想将 Diskshadow 合并到我拥有的现有 Powershell 备份脚本中,长话短说,如果我可以围绕exec
命令分解这些命令,那将是最简单的。像这样的东西:
# Powershell script
diskshadow -s diskshadowStartScript.dsh
# some backup commands here...
diskshadow -s diskshadowEndScript.dsh
以下是每个 diskshadow 脚本将包含的内容:
diskshadow 启动脚本:
#diskshadowStartScript.dsh
set verbose on
set context persistent
begin backup
add volume d: alias DataVol
create
expose %DataVol% Z:
diskshadow 结束脚本:
#diskshadowEndScript.dsh
end backup
delete shadows exposed Z:
exit
在阅读了所有文档之后,仍然有点不清楚是否Begin backup
并且End backup
必须从同一个 diskshadow 脚本中调用,或者它们是否可以分成单独的脚本。我知道当我留下一个脚本时,我会留下上下文或会话,并且我无法访问为卷别名创建的环境变量,但类似的事情是否也适用于Begin backup
andEnd backup
命令?或者那些备份命令就像Delete shadows
可以在不同地方调用的命令一样?