Præsentation er lastning. Vent venligst

Præsentation er lastning. Vent venligst

Instructions • You must bring your own laptop, your presentation and a power supply • Technical staff is present in all to assist with network, audio and.

Lignende præsentationer


Præsentationer af emnet: "Instructions • You must bring your own laptop, your presentation and a power supply • Technical staff is present in all to assist with network, audio and."— Præsentationens transcript:

1 Instructions • You must bring your own laptop, your presentation and a power supply • Technical staff is present in all to assist with network, audio and video setup • Speakers are responsible for presentation computer and demo equipment • Please make sure your PC have correct video drivers installed. • Be at your session no later than 30 min. Prior to your timeslot to setup your equipment • Evaluation-slide will be send to you prior to Campus Days, which should replace the current Evaluation-slide Technical details • All presentations should be 16:9 widescreen format • Output connectors provided in all session rooms are: DVI, HDM, Micro HDMI, VGA For NON-Microsoft speakers: • Own company logo is allowed on the Session Title slide only • Sessions are non commercial – Please do NOT sell own products or services

2

3

4 • PowerShell – introduktion • Hvorfor PowerShell • Hvad er PowerShell • Anvendt PowerShell • Installation / Konfiguration • SharePoint Development • Administration • Migrering / Opgradering • Hvad bringer fremtiden • Spørgsmål

5 PowerShell - introduktion

6 Hvorfor bruge PowerShell til SharePoint • Direkte adgang til hele SharePoint • Hurtigere • Større kontrol • Undgå timeout issues med IIS • Reproducerbart • Fejl minimerende • Fejl håndtering • Egne scripts • Selvdokumenterende • Handlings-log • PS Transcript • Bling faktor! PowerShell - introduktion

7 Hvad er PowerShell? PS:\> PowerShell - introduktion

8 Hvad er PowerShell? • En prompt PS:\> PowerShell - introduktion

9 Hvad er PowerShell? • En prompt • Interface til filsystemet PS:\> PowerShell - introduktion

10 Hvad er PowerShell? • En prompt • Interface til filsystemet PS:\> mkdir 'Demo Folder' Directory: PS:\ Mode LastWriteTime Length Name ---- ------------- ------ ---- d---- 10-10-2013 08:41 Demo Folder PS:\> PowerShell - introduktion

11 Hvad er PowerShell? • En prompt • Interface til filsystemet PS:\> mkdir 'Demo Folder' Directory: PS:\ Mode LastWriteTime Length Name ---- ------------- ------ ---- d---- 10-10-2013 08:41 Demo Folder PS:\> cd '.\Demo Folder' PS:\Demo Folder> PowerShell - introduktion

12 Hvad er PowerShell? • En prompt • Interface til filsystemet • Understøtter piping Directory: PS:\ Mode LastWriteTime Length Name ---- ------------- ------ ---- d---- 10-10-2013 08:41 Demo Folder PS:\> cd '.\Demo Folder' PS:\Demo Folder> echo NogetTekst | Out-File -FilePath 'en_fil.txt' PS:\Demo Folder> PowerShell - introduktion

13 Hvad er PowerShell? • En prompt • Interface til filsystemet • Understøtter piping og redirection Mode LastWriteTime Length Name ---- ------------- ------ ---- d---- 10-10-2013 08:41 Demo Folder PS:\> cd '.\Demo Folder' PS:\Demo Folder> echo NogetTekst | Out-File -FilePath 'en_fil.txt' PS:\Demo Folder> (dir) >> en_fil.txt PS:\Demo Folder> PowerShell - introduktion

14 Hvad er PowerShell? • En prompt • Interface til filsystemet • Understøtter piping og redirection PS:\Demo Folder> type en_fil.txt NogetTekst Directory: PS:\Demo Folder Mode LastWriteTime Length Name ---- ------------- ------ ---- -a--- 10-10-2013 08:42 400 en_fil.txt PS:\Demo Folder> PowerShell - introduktion

15 Hvad er PowerShell? • En prompt • Interface til filsystemet • Understøtter piping og redirection • Desuden • Global tab-completion PS:\Demo Folder> type en_fil.txt NogetTekst Directory: PS:\Demo Folder Mode LastWriteTime Length Name ---- ------------- ------ ---- -a--- 10-10-2013 08:42 400 en_fil.txt PS:\Demo Folder> PowerShell - introduktion

16 Hvad er PowerShell? • En prompt • Interface til filsystemet • Understøtter piping og redirection • Desuden • Global tab-completion • Cmdlets opbygget af et Verb og et Noun PS:\Demo Folder> type en_fil.txt NogetTekst Directory: PS:\Demo Folder Mode LastWriteTime Length Name ---- ------------- ------ ---- -a--- 10-10-2013 08:42 400 en_fil.txt PS:\Demo Folder> PowerShell - introduktion

17 Hvad er PowerShell? • En prompt • Interface til filsystemet • Understøtter piping og redirection • Desuden • Global tab-completion • Cmdlets opbygget af et Verb og et Noun -a--- 10-10-2013 08:42 400 en_fil.txt PS:\Demo Folder> Get-ChildItem Directory: PS:\Demo Folder Mode LastWriteTime Length Name ---- ------------- ------ ---- -a--- 10-10-2013 08:42 400 en_fil.txt PS:\Demo Folder> PowerShell - introduktion

18 Hvad er PowerShell? • Et scriptinginterface PS:\Demo Folder> PowerShell - introduktion

19 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel PS:\Demo Folder> PowerShell - introduktion

20 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration PS:\Demo Folder> PowerShell - introduktion

21 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration PS:\Demo Folder> $var = 'en_streng' PS:\Demo Folder> PowerShell - introduktion

22 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration og redeklaration PS:\Demo Folder> $var = 'en_streng' PS:\Demo Folder> $var = 1 PS:\Demo Folder> PowerShell - introduktion

23 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration og redeklaration • Objektorienteret og understøtter dot-operatoren PS:\Demo Folder> $var = 'en_streng' PS:\Demo Folder> $var = 1 PS:\Demo Folder> PowerShell - introduktion

24 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration og redeklaration • Objektorienteret og understøtter dot-operatoren PS:\Demo Folder> $var = 1 PS:\Demo Folder> $var.GetType() IsPublic IsSerial Name BaseType -------- -------- ---- -------- True True Int32 System.ValueType PS:\Demo Folder> PowerShell - introduktion

25 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration og redeklaration • Objektorienteret og understøtter dot-operatoren IsPublic IsSerial Name BaseType -------- -------- ---- -------- True True Int32 System.ValueType PS:\Demo Folder> $var.GetType().Name Int32 PS:\Demo Folder> PowerShell - introduktion

26 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration og redeklaration • Objektorienteret og understøtter dot-operatoren • Understøtter arrays og mere komplekse objekter IsPublic IsSerial Name BaseType -------- -------- ---- -------- True True Int32 System.ValueType PS:\Demo Folder> $var.GetType().Name Int32 PS:\Demo Folder> PowerShell - introduktion

27 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration og redeklaration • Objektorienteret og understøtter dot-operatoren • Understøtter arrays og mere komplekse objekter -------- -------- ---- -------- True True Int32 System.ValueType PS:\Demo Folder> $var.GetType().Name Int32 PS:\Demo Folder> $var = ('anden_streng',4) PS:\Demo Folder> PowerShell - introduktion

28 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration og redeklaration • Objektorienteret og understøtter dot-operatoren • Understøtter arrays og mere komplekse objekter Int32 PS:\Demo Folder> $var = ('anden_streng',4) PS:\Demo Folder> $var anden_streng 4 PS:\Demo Folder> PowerShell - introduktion

29 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration og redeklaration • Objektorienteret og understøtter dot-operatoren • Understøtter arrays og mere komplekse objekter PS:\Demo Folder> $var anden_streng 4 PS:\Demo Folder> $var[1] 4 PS:\Demo Folder> PowerShell - introduktion

30 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration og redeklaration • Objektorienteret og understøtter dot-operatoren • Understøtter arrays og mere komplekse objekter • Understøtter comparisons PS:\Demo Folder> $var anden_streng 4 PS:\Demo Folder> $var[1] 4 PS:\Demo Folder> PowerShell - introduktion

31 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration og redeklaration • Objektorienteret og understøtter dot-operatoren • Understøtter arrays og mere komplekse objekter • Understøtter comparisons 4 PS:\Demo Folder> $var[1] 4 PS:\Demo Folder> (dir).Count -eq $var.Count False PS:\Demo Folder> PowerShell - introduktion

32 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration og redeklaration • Objektorienteret og understøtter dot-operatoren • Understøtter arrays og mere komplekse objekter • Understøtter comparisons • Understøtter simple control structures 4 PS:\Demo Folder> $var[1] 4 PS:\Demo Folder> (dir).Count -eq $var.Count False PS:\Demo Folder> PowerShell - introduktion

33 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration og redeklaration • Objektorienteret og understøtter dot-operatoren • Understøtter arrays og mere komplekse objekter • Understøtter comparisons • Understøtter simple control structures 4 PS:\Demo Folder> (dir).Count -eq $var.Count False PS:\Demo Folder> if (-not ((dir).Count -eq $var.Count)) {(dir).Count} 1 PS:\Demo Folder> PowerShell - introduktion

34 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration og redeklaration • Objektorienteret og understøtter dot-operatoren • Understøtter arrays og mere komplekse objekter • Understøtter comparisons • Understøtter simple control structures og mere komplekse constructs PS:\Demo Folder> (dir).Count -eq $var.Count False PS:\Demo Folder> if (-not ((dir).Count -eq $var.Count)) {(dir).Count} 1 PS:\Demo Folder> foreach ($item in dir) {$item.LastWriteTime = Get-Date} PS:\Demo Folder> PowerShell - introduktion

35 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration og redeklaration • Objektorienteret og understøtter dot-operatoren • Understøtter arrays og mere komplekse objekter • Understøtter comparisons • Understøtter simple control structures og mere komplekse constructs PS:\Demo Folder> dir Directory: PS:\Demo Folder Mode LastWriteTime Length Name ---- ------------- ------ ---- -a--- 10-10-2013 08:56 400 en_fil.txt PS:\Demo Folder> PowerShell - introduktion

36 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration og redeklaration • Objektorienteret og understøtter dot-operatoren • Understøtter arrays og mere komplekse objekter • Understøtter comparisons • Understøtter simple control structures og mere komplekse constructs • Understøtter funktioner PS:\Demo Folder> dir Directory: PS:\Demo Folder Mode LastWriteTime Length Name ---- ------------- ------ ---- -a--- 10-10-2013 08:56 400 en_fil.txt PS:\Demo Folder> PowerShell - introduktion

37 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration og redeklaration • Objektorienteret og understøtter dot-operatoren • Understøtter arrays og mere komplekse objekter • Understøtter comparisons • Understøtter simple control structures og mere komplekse constructs • Understøtter funktioner Mode LastWriteTime Length Name ---- ------------- ------ ---- -a--- 10-10-2013 08:56 400 en_fil.txt PS:\Demo Folder> function Demo-PS {Param ($Navn='Verden') Write-Host "Hej $Navn!"} PS:\Demo Folder> PowerShell - introduktion

38 Hvad er PowerShell? • Et scriptinginterface • Lægger sig op ad C#; konverteringen imellem de to er ofte simpel • Understøtter implicit variabel-deklaration og redeklaration • Objektorienteret og understøtter dot-operatoren • Understøtter arrays og mere komplekse objekter • Understøtter comparisons • Understøtter simple control structures og mere komplekse constructs • Understøtter funktioner ---- ------------- ------ ---- -a--- 10-10-2013 08:56 400 en_fil.txt PS:\Demo Folder> function Demo-PS {Param ($Navn='Verden') Write-Host "Hej $Navn!"} PS:\Demo Folder> Demo-PS Hej Verden! PS:\Demo Folder> PowerShell - introduktion

39 Hvad er PowerShell? • En ”scripting-prompt” PS:\Demo Folder> PowerShell - introduktion

40 Hvad er PowerShell? • En ”scripting-prompt” PS:\Demo Folder> Demo-PS PowerShell - introduktion

41 Hvad er PowerShell? • En ”scripting-prompt” PS:\Demo Folder> Demo-PS -Navn PowerShell - introduktion

42 Hvad er PowerShell? • En ”scripting-prompt” PS:\Demo Folder> Demo-PS –Navn (Get-Process) PowerShell - introduktion

43 Hvad er PowerShell? • En ”scripting-prompt” PS:\Demo Folder> Demo-PS –Navn (Get-Process | Where-Object) PowerShell - introduktion

44 Hvad er PowerShell? • En ”scripting-prompt” • ”Pipe-variablen” binder dem sammen PS:\Demo Folder> Demo-PS –Navn (Get-Process | Where-Object {$_}) PowerShell - introduktion

45 Hvad er PowerShell? • En ”scripting-prompt” • ”Pipe-variablen” binder dem sammen PS:\Demo Folder> Demo-PS –Navn (Get-Process | Where-Object {$_.Id -eq $pid}) PowerShell - introduktion

46 Hvad er PowerShell? • En ”scripting-prompt” • ”Pipe-variablen” binder dem sammen PS:\Demo Folder> Demo-PS –Navn (Get-Process | Where-Object {$_.Id -eq $pid}).ProcessName PowerShell - introduktion

47 Hvad er PowerShell? • En ”scripting-prompt” • ”Pipe-variablen” binder dem sammen PS:\Demo Folder> Demo-PS –Navn (Get-Process | Where-Object {$_.Id -eq $pid}).ProcessName.ToUpper() PowerShell - introduktion

48 Hvad er PowerShell? • En ”scripting-prompt” • ”Pipe-variablen” binder dem sammen PS:\Demo Folder> Demo-PS –Navn (Get-Process | Where-Object {$_.Id -eq $pid}).ProcessName.ToUpper() Hej POWERSHELL! PS:\Demo Folder> PowerShell - introduktion

49 Anvendt PowerShell

50 Hvor kan PowerShell bruges til SharePoint? • Installation / Konfiguration • SharePoint Development • Administration • Migrering / Opgradering

51 Anvendt PowerShell – Installation / Konfiguration

52 New-SPStateServiceDatabase New-SPStateServiceApplication New-SPConfigurationDatabase New-SPUsageApplication Enable-SPSessionStateService

53 Anvendt PowerShell – Installation / Konfiguration New-SPStateServiceDatabase -Name 'SP01_SharePoint_service_State' | New- SPStateServiceApplication -Name 'State' | New- SPStateServiceApplicationProxy -Name 'State' New-SPConfigurationDatabase -DatabaseServer 'DB01' -DatabaseName 'SP01_SharePoint_Config' -Passphrase 'The_PassPhrase!' -FarmCredentials DOM\svcSPFarm -AdministrationContentDatabaseName 'SP01_SharePoint_Content_CentralAdmin' New-SPUsageApplication -Name 'Usage' -DatabaseName 'SP01_SharePoint_service_Usage' Enable-SPSessionStateService –DatabaseName 'SP01_SharePoint_service_SessionState'

54 Anvendt PowerShell – Installation / Konfiguration Installation / Konfiguration - tilgange • Egne scripts/funktioner • Velkendt, overskuelig kode • Hurtig at eksekvere • Let at tilrette • AutoSPInstaller • Installerer – med lidt tilretninger – alle komponenter i én omgang • Kendt og supporteret af community’et • Forholdsvist let for SharePoint-kyndige at konfigurere vha. AutoSPInstallerGUI eller Excel til XML-tool

55 Anvendt PowerShell – Installation / Konfiguration – Egne scripts/funktioner Egne scripts/funktioner • De uundgåelige • Farm • Managed Accounts • State, Session State og Usage • Search • ASP.NET Cache Accounts • De ligetil • “OWA” Service Apps • Managed Metadata • Performance Point • Den besværlige • User Profile Service

56 Anvendt PowerShell – Installation / Konfiguration Installation/Konfiguration - tilgange • Konfiguration • Søgetopologi kun vha. PowerShell I SP2013 • Konsistente databasenavne

57 Anvendt PowerShell – Installation / Konfiguration - AutoSPInstaller AutoSPInstaller • Færdig PowerShell samling til SharePoint opsætning • XML baseret konfiguration • AutoSPInstallerGUI • Excel-til-XML

58 Anvendt PowerShell – SharePoint Development SharePoint Development • Solution deployment/setup • WSP pakker Add-SPSolution, Install-SPSolution, Uninstall-SPSolution, Remove-SPSolution • Udviklings-teams • Ensartet opsætning/installation hos alle udviklere • Mijløinstallation • Ensartet installation Development / Sandbox / Preprod / produktion • Nulstille miljø • Oprette grundlæggende sidestruktur • Oprette site collection/web/sider • Indsætte web parts • Feature aktivering

59 Anvendt PowerShell – SharePoint Development

60 Anvendt PowerShell - Administration Administration • Masse rettelser • User profile billeder • Bruger migrering • Flytte site collections • Move-SPSite ‘http://ServerName/Sites/SiteName’ -DestinationDatabase ‘NewContentDb’ • Backup/restore • Troubleshooting • Merge-SPLogFile -Path ‘D:\Logs\FarmMergedLog.log’ -Overwrite –Correlation correlationGUID • OM adgang • Vedligeholdelse • Warmup script https://spbestwarmup.codeplex.com/

61 Anvendt PowerShell – Migrering / opgradering Opgradering • Smertefrit fra SharePoint 2010 til 2013 • Strukturel iteration snarere end revolution • 14-folderen i SharePoint 2013 • Kun Database Attach-metode • Tryg opgraderingsfase uden nedetid eller behov for rollback • Stadigt ingen overspring – uden tredjepart • Metalogix Migration Manager • Testupgrade kun til “skyen”

62 Anvendt PowerShell – Migrering / opgradering Migreringsscenarie • SharePoint 2010 Classic-Mode Web Application til SharePoint 2013 Claims Based Authentication Web Application i 10 trin 1.Sæt SharePoint 2010 Content DB Read Only og tag backup af denne 2.Genskab backup til SharePoint 2013-miljøs SQL Server og sæt databasen Read/Write 3.Opret i SharePoint 2013 en Classic-Mode Web Application med midlertidig database 4.Mount genskabt 2010-database (opgraderes automatisk) 5.Slet den midlertidige database 6.Konverter autenticeringsmetoden til Claims 7.Kontroller, at alle migrerede sider vises korrekt 8.Opgrader ønskede site collections til SharePoint 2013 9.Kontroller, at alle opgraderede sider vises korrekt 10.Omdiriger brugere til SharePoint 2013-miljø

63 Anvendt PowerShell – Migrering / opgradering Migreringsscenarie • SharePoint 2010 Classic-Mode Web Application til SharePoint 2013 Claims Based Authentication Web Application PS:\> New-SPWebApplication -Name 'MyWebapp' -ApplicationPool 'MyWebapp' –ApplicationPoolAccount (Get- SPManagedAccount 'DOM\svcWAAcct') $sa –Url 'http://mywebapp.dom.local' -DatabaseName 'SP01_SharePoint_Content_mywebapp-dom-local_TEMP' PS:\> Mount-SPContentDatabase -WebApplication 'http://mywebapp.dom.local' -Name 'SP01_SharePoint_Content_mywebapp-dom-local' PS:\> Remove-SPContentDatabase -Identity 'SP01_SharePoint_Content_mywebapp-dom-local_TEMP' PS:\> Convert-SPWebApplication –Identity 'http://mywebapp.dom.local' –To Claims -RetainPermissions PS:\> Get-SPSiteCollection 'http://mywebapp.dom.local/mysitecoll' | Upgrade-SPSiteCollection

64 Hvad bringer fremtiden

65 • Mere integration i alle Microsoft produkterne • SharePoint online • http://technet.microsoft.com/en-us/library/fp161362.aspx

66 Mere information • Use Windows PowerShell to administer SharePoint • http://technet.microsoft.com/en-us/library/ee806878(office.15) • Windows PowerShell Command Builder • http://www.microsoft.com/resources/TechNet/en- us/Office/media/WindowsPowerShell/WindowsPowerShellCommandBuilder.html • Hey, Scripting Guy! blog • http://blogs.technet.com/b/heyscriptingguy/archive/tags/windows%20powershell/getting%20started/default.aspx

67 • Variable • $ • Objekter • Properties • Metoder • Pipes • | • $_ • Objektmanipulation • *-Object • Funktioner • function PS :\> Anvendt PowerShell – Brugermanipulation

68 • Variable • $ • Objekter • Properties • Metoder • Pipes • | • $_ • Objektmanipulation • *-Object • Funktioner • function $ PS :\> $web = Get-SPWeb ‘http://MyUrl’ PS :\> $web Url --- http://myurl PS :\> Anvendt PowerShell – Brugermanipulation

69 • Variable • $ • Objekter • Properties • Metoder • Pipes • | • $_ • Objektmanipulation • *-Object • Funktioner • function PS :\> $web = Get-SPWeb ‘http://MyUrl’ PS :\> $web Url --- http://myurl PS :\> $web.AllUsers UserLogin DisplayName --------- ----------- Enabling\Christian Kristian Degn SHAREPOINT\system System Account PS :\> Anvendt PowerShell – Brugermanipulation

70 • Variable • $ • Objekter • Properties • Metoder • Pipes • | • $_ • Objektmanipulation • *-Object • Funktioner • function PS :\> $web.AllUsers UserLogin DisplayName --------- ----------- Enabling\Christian Kristian Degn SHAREPOINT\system System Account PS :\> $usr = $web.AllUsers[0] PS :\> $usr UserLogin DisplayName --------- ----------- Enabling\Christian Kristian Degn PS :\> Anvendt PowerShell – Brugermanipulation

71 • Variable • $ • Objekter • Properties • Metoder • Pipes • | • $_ • Objektmanipulation • *-Object • Funktioner • function PS :\> $usr = $web.AllUsers[0] PS :\> $usr UserLogin DisplayName --------- ----------- Enabling\Christian Kristian Degn PS :\> $usr.DisplayName = ‘Christian Degn’ PS :\> $usr UserLogin DisplayName --------- ----------- Enabling\Christian Christian Degn PS :\> Anvendt PowerShell – Brugermanipulation

72 • Variable • $ • Objekter • Properties • Metoder • Pipes • | • $_ • Objektmanipulation • *-Object • Funktioner • function PS :\> $usr.DisplayName = ‘Christian Degn’ PS :\> $usr UserLogin DisplayName --------- ----------- Enabling\Christian Christian Degn PS :\> (Get-SPWeb 'http://MyUrl').AllUsers UserLogin DisplayName --------- ----------- Enabling\Christian Kristian Degn SHAREPOINT\system System Account PS :\> Anvendt PowerShell – Brugermanipulation

73 • Variable • $ • Objekter • Properties • Metoder • Pipes • | • $_ • Objektmanipulation • *-Object • Funktioner • function PS :\> $usr.DisplayName = ‘Christian Degn’ PS :\> $usr UserLogin DisplayName --------- ----------- Enabling\Christian Christian Degn PS :\> (Get-SPWeb 'http://MyUrl').AllUsers UserLogin DisplayName --------- ----------- Enabling\Christian Kristian Degn SHAREPOINT\system System Account PS :\> $usr.Update() PS :\> Anvendt PowerShell – Brugermanipulation

74 • Variable • $ • Objekter • Properties • Metoder • Pipes • | • $_ • Objektmanipulation • *-Object • Funktioner • function PS :\> (Get-SPWeb 'http://MyUrl').AllUsers UserLogin DisplayName --------- ----------- Enabling\Christian Kristian Degn SHAREPOINT\system System Account PS :\> $usr.Update() PS :\> (Get-SPWeb 'http://MyUrl').AllUsers[0] UserLogin DisplayName --------- ----------- Enabling\Christian Christian Degn SHAREPOINT\system System Account PS :\> Anvendt PowerShell – Brugermanipulation

75 • Variable • $ • Objekter • Properties • Metoder • Pipes • | • $_ • Objektmanipulation • *-Object • Funktioner • function PS :\> (Get-SPWeb 'http://MyUrl').AllUsers UserLogin DisplayName --------- ----------- Enabling\Christian Kristian Degn SHAREPOINT\system System Account PS :\> $usr.Update() PS :\> (Get-SPWeb 'http://MyUrl').AllUsers[0] UserLogin DisplayName --------- ----------- Enabling\Christian Christian Degn SHAREPOINT\system System Account PS :\> Clear-Host Anvendt PowerShell – Brugermanipulation

76 • Variable • $ • Objekter • Properties • Metoder • Pipes • | • $_ • Objektmanipulation • *-Object • Funktioner • function PS :\> Anvendt PowerShell – Brugermanipulation

77 • Variable • $ • Objekter • Properties • Metoder • Pipes • | • $_ • Objektmanipulation • *-Object • Funktioner • function PS :\> function Update-SPUserDisplayName { Param ( [string]$WebUrl, [string]$UserLogin, [string]$NewDisplayName ) $usr = (Get-SPWeb $WebUrl).AllUsers | Where- Object {$_.UserLogin -eq $UserLogin} $usr.DisplayName = $NewDisplayName $usr.Update() return $usr } PS \:> Anvendt PowerShell – Brugermanipulation

78 • Variable • $ • Objekter • Properties • Metoder • Pipes • | • $_ • Objektmanipulation • *-Object • Funktioner • function PS :\> function Update-SPUserDisplayName { Param ( [string]$WebUrl, [string]$UserLogin, [string]$NewDisplayName ) $usr = (Get-SPWeb $WebUrl).AllUsers | Where- Object {$_.UserLogin -eq $UserLogin} $usr.DisplayName = $NewDisplayName $usr.Update() return $usr } PS \:> Update-SPUserDisplayName –WebUrl ‘http://MyUrl’ –UserLogin ‘Enabling\Christian’ – NewDisplayName ‘Christian Degn’ Anvendt PowerShell – Brugermanipulation

79 Anvendt PowerShell – Søgetopologi $Server1 = 'SP01' $Server2 = 'SP02' $searchServiceApplication = Get-SPEnterpriseSearchServiceApplication $oldSearchTopology = Get-SPEnterpriseSearchTopology -SearchApplication $searchServiceApplication -Active $searchTopology = New-SPEnterpriseSearchTopology -SearchApplication $searchServiceApplication -Clone –SearchTopology $oldSearchTopology $searchServiceInstance1 = Get-SPEnterpriseSearchServiceInstance -Identity $Server1 $searchServiceInstance2 = Get-SPEnterpriseSearchServiceInstance -Identity $Server2 New-SPEnterpriseSearchQueryProcessingComponent -SearchTopology $searchTopology -SearchServiceInstance $searchServiceInstance1 New-SPEnterpriseSearchQueryProcessingComponent -SearchTopology $searchTopology -SearchServiceInstance $searchServiceInstance2 New-SPEnterpriseSearchIndexComponent –SearchTopology $searchTopology -SearchServiceInstance $searchServiceInstance1 - IndexPartition 0 New-SPEnterpriseSearchIndexComponent –SearchTopology $searchTopology -SearchServiceInstance $searchServiceInstance2 - IndexPartition 1 Set-SPEnterpriseSearchTopology -Identity $searchTopology Search

80 Anvendt PowerShell – Tips og Tricks At hente passwords ud af Managed Accounts $Identity = Get-SPManagedAccount $bindingFlags = [System.Reflection.BindingFlags]::Instance –bor [System.Reflection.BindingFlags]::NonPublic $passwordSecstr = ([Microsoft.SharePoint.Administration.SPManagedAccount].GetField('m_Password', $bindingFlags).GetValue($Identity).SecureStringValue $passwordPlaintxt = [Runtime.InteropServices.Marshal]::PtrToStringAuto( [Runtime.InteropServices.Marshal]::SecureStringToBSTR($passwordSecstr) )

81 Spørgsmål

82 Evaluation Create a Text message on your phone and send it to 1919 with the content: PR306 5 5 5 5 I liked it a lot Session Code Rune Performance (1 to 5) Match of technical Level (1 to 5) Relevance (1 to 5) Comments (optional) Evaluation Scale: 1 = Very bad 2 = Bad 3 = Relevant 4 = Good 5 = Very Good! Questions: • Speaker Performance • Relevance according to your work • Match of technical level according to published level • Comments Christian Performance (1 to 5)

83 © 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.


Download ppt "Instructions • You must bring your own laptop, your presentation and a power supply • Technical staff is present in all to assist with network, audio and."

Lignende præsentationer


Annoncer fra Google