Benjamins Blog

Benjamin Wegner über Weisheiten, SharePoint und IT Zeugs

Benjamins Blog header image 2

SharePoint 2010 PowerShell Warumup Script

November 21st, 2011 ·

Basierend auf diesem Artikel von Andreas Knauer habe ich noch ein paar ergänzende Informationen.

Das beschriebene Powershell Script sieht wie folgt aus und iteriert über alle WebApplications:

Add-PsSnapin Microsoft.SharePoint.PowerShell -erroraction silentlycontinue  
  
 foreach ($webApp in get-SPWebApplication)  
    {      
        foreach ($site in $webApp.Sites)  
        {  
            foreach ($web in get-SPWeb -site $site)  
            {  
                $request = [System.Net.WebRequest]::Create($web.URL)  
                $request.Credentials = [System.Net.CredentialCache]::DefaultNetworkCredentials  
                $request.proxy = [System.Net.WebRequest]::DefaultWebProxy  
                $request.ContentType = "application/x-www-form-urlencoded"  
                $request.Method = "GET"  
        try{  
                    $request.GetResponse().StatusCode  
            WRITE-HOST $request.GetResponse().StatusCode  
                }  
                catch [Net.WebException]{  
                    $WebExceptionMessage = $_.Exception.Message  
                    WRITE-HOST "Folgender Fehler ist aufgetreten: " + $WebExceptionMessage  
                }  
            }  
        }  
    }  

Zur Einbindung als Scheduled Task, den o.g. Code in einer .ps1 Datei speichern. Dann den Task Scheduler öffnen:

image

und “Create Basic Task” klicken.

Dann dort eine neue Action erstellen und “Start a program” auswählen, powershell als Program eingeben und bei Argument “-noprofile –command [Pfad zum o.g. Script]” einfügen.

 image

Weiterhin ist wichtig, den passenden User einzutragen, damit auch alle WebApplications ordnungsgemäß initialisiert werden könne. Der passende User ist beispielsweise der User unter dem der TimerJob Service läuft.

image

image

Tags: Allgemein