使用Powershell实现自动备份文件夹。
将多个文件夹,分别对应备份到不同目标路径下,并且实现每隔1小时(周期可自己定)自动检查备份。
将如下代码保存为.ps1文件,右键点击“使用PowerShell运行”。
$sourceFolders = “\路径1”,
“\路径2”
$targetFolders = “\路径3”,
“\路径4”
while($true){
write-host "# 即将执行copy"
Write-Host "- 将从上一次copy日期开始copy,若需手动copy,请将该文件 D:\last_backup_time.txt 删除"
Write-Host “- 检查上一次copy日期”
$FolderNO = $sourceFolders.Length
$time_stamp_path = 'D:\last_backup_time.txt'
$saved = Test-Path $time_stamp_path
if ($saved){
Write-Host "- 已找到copy日期文件,D:\last_backup_time.txt"
$last_backup_time_str = Get-Content $time_stamp_path | Out-String
$last_backup_time = [Datetime]$last_backup_time_str
Write-Host "- 将copy:$last_backup_time 之后的文件:"
for($i = 0;$i -lt $FolderNO;$i++){
#$filesReadyToMove = Get-ChildItem -path $sourceFolders[$i] | where {$_