Skip to content

Instantly share code, notes, and snippets.

@riazul701
Forked from stil/backup.ps1
Created February 11, 2023 17:01
Show Gist options
  • Save riazul701/184dc2a9602b2da11a52906cbaf9d423 to your computer and use it in GitHub Desktop.
Save riazul701/184dc2a9602b2da11a52906cbaf9d423 to your computer and use it in GitHub Desktop.
Differential backup with 7zip and Powershell
# CONFIGURATION
$dirToBackup = "C:\Users\John" # path to directory we back up (no following backslash)
$outputDir = "E:\bak" # path directory we store our backups (no following backslash)
$params = '-t7z', '-r', '-ms=off', '-mx1'
# THE SCRIPT
$fullBackup = $outputDir + "\full.7z"
if (Test-Path ($fullBackup)) { # Let's check whether full backup exists
Write-Host "Full backup already exists"
$args = ,'u' + $params
$args += '-u-', "-up0q3r2x2y2z0w2!`"$($outputDir)\diff-$(Get-Date -format "yyyyMMdd-HHmmss").7z`""
$args += $fullBackup, $dirToBackup
} else {
$args = , ('a') + $params + $fullBackup + $dirToBackup
}
& 7z $args
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment