Highway to Powershell

Jaså, du har sett en massa tuffa Powershellscript som kan hjälpa dig med allt från att lägga upp nya användare i Office 365, radera webbplatssamlingar permanent (finns en bloggpost om det här) till att konvertera Worddokument till PDF (här) och koka kaffe (skojade bara, det finns inte. Än.)

Och så undrar du hur du får allting att funka. Hur?

Det beror på vad du vill göra, är det enkla och rätt frustrerande svaret. För den vanlige användaren är det relativt okomplicerat. Säg att du har hittat ett script (det vill säga en kodsnutt i Powershell). Jag hittade exempelvis det här, som raderar alla filer i en mapp om de är äldre än 15 dagar. Antalet dagar går naturligtvis att ändra, på första raden i scriptet. Och du behöver ändra sökvägen, $path, så den pekar på rätt mapp. Dessutom behöver du fundera på om det är en mapp vars innehåll du verkligen vill radera efter ett visst antal dagar – använd med andra ord scriptet med försiktighet.

$limit = (Get-Date).AddDays(-15)
$path = "C:\Some\Path"
# Delete files older than the $limit.
Get-ChildItem -Path $path -Recurse -Force | Where-Object { !$_.PSIsContainer -and $_.CreationTime -lt $limit } | Remove-Item -Force
# Delete any empty directories left behind after deleting the old files.
Get-ChildItem -Path $path -Recurse -Force | Where-Object { $_.PSIsContainer -and (Get-ChildItem -Path $_.FullName -Recurse -Force | Where-Object { !$_.PSIsContainer }) -eq $null } | Remove-Item -Force -Recurse

Du är säker? Bra, då kör vi. Kopiera skriptet (Ctrl-C) och lägg in det i ett vanligt textdokument. Döp det till något passande och använd ändelsen ps1: raderadokument.ps1 är en variant. Nu så.

  1. Öppna Powershell (om du är nybörjare har du antagligen bara standardvarianten, så sök efter Powershell och öppna det som administratör).
  2. bloggpowershell
  3. Ser det skräckinjagande ut? Äsch. Du navigerar bakåt med cd .. och framåt med cd och namnet på mappen du vill åt. För att komma till skrivbordet – cd .. Return cd .. Return cd users Return cd namnet på ditt konto Return cd desktop Return.
  4. Sparade du scriptet på ditt skrivbord? Gott. Kommandot för att starta ett powershellscript är .\scriptnamn.ps1. I det här fallet skriver du alltså .\raderadokument.ps1 och trycker return. Gå till mappen du raderade och kontrollera att den är tom på dokument äldre än 15 dagar. Succé!

Det är inte svårare än så. Med tiden kommer du säkert att vilja utforska Powershell som metod att styra Office 365, lägga till moduler för ökad funktionalitet, använda verktyg med grafiskt användarstöd och så vidare, men det här är Powershell i sin mest basala form: ett textdokument med ändelsen ps1. Kör det med .\ och du är klar.

Johan Sjöstrand

Jag jobbar med SharePoint Online och Office 365, gillar Powershell och smarta OOTB-lösningar. En gång i tiden var jag journalist och skrev mycket om kultur och nöje, numera försöker jag intressera mina kollegor för frijazz (med blandat resultat). Gillar text och är intresserad av SharePoints publiceringsfunktioner.

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.