[英]Wbadmin in powershell
您能否建议如何使此脚本起作用?
通过以下命令,它可以在cmd中正常工作:
wbadmin start systemstatebackup 'backuptarget:"F:"' '-quiet'
它通过以下命令在运行Powershell的cmd中工作:
[powershell] wbadmin start systemstatebackup 'backuptarget:"F:"' '-quiet'
但是它在Powershell脚本(backups.ps1)中不起作用。 我对单引号和双引号的使用感到困惑。 以下迭代无效
backup.ps1
$IFMResult2 = "WBADMIN START SYSTEMSTATEBACKUP -backupTarget:E: -quiet"
$IFMOutput2 = Invoke-Expression $IFMResult2 | out-string -stream
$IFMResult2 = "WBADMIN START SYSTEMSTATEBACKUP 'backuptarget:"F:"' '-quiet'"
$IFMOutput2 = Invoke-Expression $IFMResult2 | out-string -stream
错误为WBADDMIN错误(Systemstatebackup):缺少选项backuptarget的值
这对我有用,但不问原因。
$ strBackupDrive =“ D:”
$ strBackupComand ='开始备份'+ [char []] 45 +'include:C:\\ Temp \\'+ [char []] 45 +'backupTarget:'+ $ strBackupDrive +'-quiet'
$ errRun =启动进程wbadmin -ArgumentList $ strBackupComand -wait -NoNewWindow -PassThru
我认为您根本不需要引号。 尝试:
$Result = & WBADMIN START SYSTEMSTATEBACKUP backuptarget:F: -quiet
您还可以将参数指定为数组:
$Result = & 'WBADMIN' @('START', 'SYSTEMSTATEBACKUP', 'backuptarget:F:', '-quiet')
请注意, wbadmin
完成后,最好检查$LastExitCode
,以确认没有错误。 例:
$Result = & WBADMIN SYSTEMSTATEBACKUP -backupTarget:F: -quiet
if($LastExitCode)
{
# Exit code is not null, something gone wrong
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.