我创建了一个 ps 脚本来将 MS SCCM 备份文件夹移动到另一个位置并删除超过 2 天的文件夹:
$Date = Get-Date -format d.M.yyyy
$BackupDir = "\\Source_Servername\Folder1\Folder2"
$ArchiveDir = "\\Destination_Servername\Folder1\Folder2"
set-alias 7za "$ArchiveDir\7za.exe"
Get-Item "$ArchiveDir\*" |? {$_.psiscontainer -and $_.lastwritetime -le (get-date).adddays(-2)} |% {remove-item $_ -Recurse -Confirm:$false}
7za a -r "$ArchiveDir\$Date\$BackupDir.7z" $BackupDir
我使用 Win 8 创建了它,当我尝试在 win2008r2 服务器上应用它时,它失败并出现以下错误:
错误的数字常量:7。在 E:\xxxxx\xxxxx\xxxx\Afterbackup.ps1:9 char:2 + 7 <<<< za a -r "$ArchiveDir\$Date\$BackupDir.7z" $BackupDir + CategoryInfo : ParserError: (7:String) [], ParseException + FullyQualifiedErrorId : BadNumericConstant
当我像这样输入 7za.exe 的完整路径时,它可以工作: \Destination_Servername\Folder1\Folder2\7za a -r "$ArchiveDir\$Date\$BackupDir.7z" $BackupDir
我是powershell的新手,所以我会提供任何帮助:)