我有一个工作脚本,7位的SQL BK文件到networking位置(这里的好人帮助:))。 由于7zip没有恢复logging,我想使用par2。 现在,我已经把一个脚本(我并不感到惊讶,因为我真的不知道PowerShell)不起作用。
脚本:
$path = "\\server\BACKUP\temp" $dest = $path $mask = "*.zip" $files = dir $path -Include $mask foreach ($file in $files) { C:\PAR\par2.exe c -r10 -n1 -m1024 "$dest\($file.basename).par2" $file }
我觉得我不远处,但解决scheme逃脱我:(
ty提前。
我不知道如何par2.exe函数,所以我假设你插入到par2.exe的所有参数是有效的。 我用最后一行注释了一个“#”,它应该执行命令。 请首先运行脚本以validation打印输出是您需要运行的,然后从最后一行删除开始的“#”以执行命令。
$path = "\\server\BACKUP\temp" $dest = $path $mask = "*.zip" $files = get-childitem $path | where-object {$_.name -like $mask} $PARCMD = "C:\PAR\par2.exe" foreach ($file in $files) { $arg = $dest + "\" + $file.name + ".par2" $PARArgs = @("c","-r10","-n1","-m1024",$arg,$file) write-host $PARCMD $PARArgs #& $PARCMD $PARArgs }
我使用的PowerShell 4.0,但我认为这应该是2.0 / 3.0兼容,请发布错误,如果你有任何,我会帮助。