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] (cast)

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).
Tags:
PowerShell200 SharePoint498 SharePoint 2007218 XML / XSL / XSLT29
Potrebbe interessarti anche: