Effettuare il backup programmato di un sito SharePoint e mantenere il loro storico per n° giorni.
Creare scipt PowerShell
Creare uno script PowerShell che effettua il backup di un sito SharePoint e il mantenimento file dei backup per un numero di giorni desiderato.
Add-PSSnapin "Microsoft.SharePoint.PowerShell"
# Url del sito sharepoint che si vuole backuppare
$siteUrl = "http://sharepoint1"
# Folder dove salvare i backup
$bckDestinationFolder = "C:BackupFolderBackup_sharepoint1"
# Nome del file da dare ad ogni backup
$bckFileName = Get-Date -Format "yyyy_MM_dd_HH_mm.bak"
$filePathDestination = $bckDestinationFolder+""+$bckFileName
Backup-SPSite -Identity $siteUrl -Path $filePathDestination -NoSiteLock
# Questo script elimina tutti i file che sono stati creati prima di tot giorni dal momento in cui viene eseguito
#path che contiene i file da cancellare
$pathFolder = $bckDestinationFolder
#Filtro di ricerca per i file da cercare dentro al folder
$fileFilter = "*.*"
#numero dei giorni per i quali si vuole mantenere un file
$numberDayOld = 15
$toDay = get-date
$countCancellati = 0
$cancellato = 0
$root_folder = Get-Item -Path $pathFolder
$files = $root_folder.GetFiles($fileFilter)
foreach($f in $files)
{
$creationTime = $f.CreationTime
# gt => sinistra maggiore di destra
if(($toDay - $creationTime).days -gt $numberDayOld)
{
$f.Delete()
$countCancellati ++
$cancellato = 1
}
}
Salvare il file con estenzione .ps1
Creare Task Windows
Non sto a spiegare come si crea nel dettaglio un nuovo task windows, ma mostrerò il dettaglio di come si configura l’azione che dovrà effettuare il task, che esegue lo script PowerShell.
![]() |
Dettaglio Azione di un Windows Task |
Action: Start a program
Programm/script: C:WindowsSystem32WindowsPowerShellv1.0PowerShell.exe
Add arguments (optional): powershell -ExecutionPolicy Unrestricted C:Beta80SharePointbackup_sharepoint1_80.ps1 *
* Indicare il percorso completo dello script PowerShell creato precedentemente.