Un esempio in PowerShell di come estrarre l'elenco dei siti personali dal file xml generato dall'utility prescan.exe di SharePoint e creare dei file per eseguire il backup e restore degli stessi su un altra web application
PowerShell
write-host "estrae i siti personali dal file xml"
$stsadm = "C:\Program Files\Common Files\Microsoft Shared\Web Server Extensions\12\BIN\stsadm"
$backup = "backup.txt";
$restore = "restore.txt";
[xml]$list = Get-Content *.xml;
#$node = $list.SelectNodes("//site/@url");
"#Backup" > $backup
"#Restore" > $restore
$list.summary.sites.site | ForEach-Object {
 $url = $_.url;
 if ($url) {
   $person = $url.Substring($url.LastIndexOf("/")+1);
   "$stsadm -o backup -url $url -filename $person.bak" >> $backup
   "$stsadm -o restore -url http://www.mionuovosito.net/$personal -filename $person.bak" >> $restore
 }
} 
"esegui come bat i file $backup e $restore"
oppure le pagine unghosted
PowerShell
write-host "estrae le pagine unghosted dal file xml"
[xml]$list = Get-Content *.xml;
$list.SelectNodes("//unghostedPage/@url")
da notare la sintassi [xml]
PowerShell
[xml]$list = Get-Content *.xml;
che permette di leggere un file e salvarlo in una variabile come oggetto xml a cui poi si potrà accedere tramite la sintassi xpath (es.: SelectNodes).
Potrebbe interessarti anche: