about_Windows_PowerShell_5.0

KORTE BESCHRIJVING

Beschrijft nieuwe functies die zijn opgenomen in Windows PowerShell 5.0.

LANGE BESCHRIJVING

Windows PowerShell 5.0 bevat belangrijke nieuwe functies die het gebruik ervan uitbreiden, de bruikbaarheid verbeteren en u in staat stellen om Windows-omgevingen eenvoudiger en uitgebreider te beheren.

Windows PowerShell 5.0 is compatibel met eerdere versies. Cmdlets, providers, modules, modules, scripts, functies en profielen die zijn ontworpen voor Windows PowerShell 4.0, Windows PowerShell 3.0 en Windows PowerShell 2.0 werken over het algemeen zonder wijzigingen in Windows PowerShell 5.0.

Windows PowerShell 5.0 wordt standaard geïnstalleerd in Windows Server Technical Preview en Windows Technical Preview. Als u Windows PowerShell 5.0 wilt installeren op Windows Server 2012 R2, Windows 8.1 Enterprise of Windows 8.1 Pro, downloadt en installeert u Windows Management Framework 5.0. Lees de downloaddetails en voldoe aan alle systeemvereisten voordat u Windows Management Framework 5.0 Preview installeert.

U kunt ook lezen over wijzigingen in Windows PowerShell 5.0 in Nieuw in Windows PowerShell.

NIEUWE FUNCTIES

Nieuwe functies in Windows PowerShell

  • Vanaf Windows PowerShell 5.0 kunt u ontwikkelen met behulp van klassen, met behulp van formele syntaxis en semantiek die vergelijkbaar zijn met andere objectgeoriënteerde programmeertalen. Class, Enum en andere trefwoorden zijn toegevoegd aan de Windows PowerShell taal ter ondersteuning van de nieuwe functie. Zie about_Classes voor meer informatie over het werken met klassen.

  • In samenwerking met Microsoft Research is een nieuwe cmdlet, ConvertFrom-String, toegevoegd. met ConvertFrom-String kunt u gestructureerde objecten extraheren en parseren uit de inhoud van tekenreeksen. Zie ConvertFrom-String voor meer informatie.

  • Een nieuwe module, Microsoft. PowerShell.Archive bevat cmdlets waarmee u bestanden en mappen kunt comprimeren tot archiefbestanden (ook wel ZIP-bestanden genoemd), bestanden kunt uitpakken uit bestaande ZIP-bestanden en ZIP-bestanden kunt bijwerken met nieuwere versies van bestanden die erin zijn gecomprimeerd.

  • Met een nieuwe module, OneGet, kunt u softwarepakketten op internet detecteren en installeren. De OneGet-module is een manager of multiplexer van bestaande pakketbeheerders (ook wel pakketproviders genoemd) om Windows-pakketbeheer te verenigen met één Windows PowerShell interface.

  • Met een nieuwe module, PowerShellGet, kunt u modules en DSC-resources zoeken, installeren, publiceren en bijwerken in de PowerShell Resource Gallery of in een interne moduleopslagplaats die u kunt instellen door de cmdlet Register-PSRepository uit te voeren.

  • New-Item, Remove-Item en Get-ChildItem zijn uitgebreid om het maken en beheren van symbolische koppelingen te ondersteunen. De parameter ItemType voor New-Item accepteert een nieuwe waarde, SymbolicLink. U kunt nu symbolische koppelingen op één regel maken door de cmdlet New-Item uit te voeren.

  • Windows PowerShell transcriptie is verbeterd om van toepassing te zijn op alle hostingtoepassingen (zoals Windows PowerShell ISE) naast de consolehost (powershell.exe). Transcriptieopties (waaronder het inschakelen van een transcriptie voor het hele systeem) kunnen worden geconfigureerd door de instelling PowerShell-transcriptie inschakelen groepsbeleid in te schakelen, die u kunt vinden in Beheersjablonen/Windows-onderdelen/Windows PowerShell.

  • Met een nieuwe functie voor gedetailleerde scripttracering kunt u gedetailleerde tracering en analyse van Windows PowerShell gebruik van scripts op een systeem inschakelen. Nadat u gedetailleerde scripttracering hebt ingeschakeld, registreert Windows PowerShell alle scriptblokken in het gebeurtenislogboek Event Tracing for Windows (ETW) Microsoft-Windows-PowerShell/Operational.

  • Vanaf Windows PowerShell 5.0 ondersteunen nieuwe cmdlets voor cryptografische berichtsyntaxis versleuteling en ontsleuteling van inhoud met behulp van de standaardindeling IETF voor het cryptografisch beveiligen van berichten, zoals gedocumenteerd door RFC5652. De cmdlets Get-CmsMessage, Protect-CmsMessage en Unprotect-CmsMessage zijn toegevoegd aan de Microsoft. PowerShell.Security-module.

  • Nieuwe cmdlets in de Microsoft. Met de PowerShell.Utility-module, Get-Runspace, Debug-Runspace, Get-RunspaceDebug, Enable-RunspaceDebug en Disable-RunspaceDebug kunt u foutopsporingsopties instellen voor een runspace en foutopsporing starten en stoppen in een runspace. Voor foutopsporing van willekeurige runspaces , dat wil gezegd runspaces die niet de standaardrunspace zijn voor een Windows PowerShell-console of Windows PowerShell ISE-sessie, kunt u met Windows PowerShell onderbrekingspunten in een script instellen en onderbrekingspunten hebben toegevoegd, zodat het script niet wordt uitgevoerd totdat u een foutopsporingsprogramma kunt toevoegen om fouten in het runspace-script op te sporen. Ondersteuning voor geneste foutopsporing voor willekeurige runspaces is toegevoegd aan het Windows PowerShell scriptfoutopsporingsprogramma voor runspaces.

  • Met nieuwe cmdlets Enter-PSHostProcess en Exit-PSHostProcess kunt u fouten opsporen in Windows PowerShell scripts in processen, los van het huidige proces dat wordt uitgevoerd in de Windows PowerShell-console. Voer Enter-PSHostProcess uit om een specifieke proces-id in te voeren of te koppelen aan, en voer vervolgens Get-Runspace uit om de actieve runspaces binnen het proces te retourneren. Voer Exit-PSHostProcess uit om los te koppelen van het proces wanneer u klaar bent met het opsporen van fouten in het script in het proces.

  • Er is een nieuwe Wait-Debugger-cmdlet toegevoegd aan de Microsoft. PowerShell.Utility-module. U kunt Wait-Debugger uitvoeren om een script in het foutopsporingsprogramma te stoppen voordat u de volgende instructie in het script uitvoert.

  • Het Windows PowerShell Workflow-foutopsporingsprogramma biedt nu ondersteuning voor het voltooien van opdrachten of tabbladen en u kunt fouten opsporen in geneste werkstroomfuncties. U kunt nu op Ctrl+Break drukken om het foutopsporingsprogramma in te voeren in een script dat wordt uitgevoerd, in zowel lokale als externe sessies en in een werkstroomscript.

  • Er is een Debug-Job cmdlet toegevoegd aan de Microsoft. PowerShell.Core-module voor het opsporen van fouten in actieve taakscripts voor Windows PowerShell workflow, achtergrond en taken die worden uitgevoerd in externe sessies.

  • Er is een nieuwe status, AtBreakpoint, toegevoegd voor Windows PowerShell taken. De status AtBreakpoint is van toepassing wanneer een taak een script uitvoert dat ingestelde onderbrekingspunten bevat en het script een onderbrekingspunt heeft bereikt. Wanneer een taak wordt gestopt bij een onderbrekingspunt voor foutopsporing, moet u fouten opsporen in de taak door de cmdlet Debug-Job uit te voeren.

  • Windows PowerShell 5.0 implementeert ondersteuning voor meerdere versies van één Windows PowerShell module in dezelfde map in $PSModulePath. Er is een eigenschap RequiredVersion toegevoegd aan de klasse ModuleSpecification om u te helpen de gewenste versie van een module op te halen; deze eigenschap is wederzijds exclusief met de eigenschap ModuleVersion. RequiredVersion wordt nu ondersteund als onderdeel van de waarde van de parameter FullyQualifiedName van de cmdlets Get-Module, Import-Module en Remove-Module.

  • U kunt nu moduleversievalidatie uitvoeren door de cmdlet Test-ModuleManifest uit te voeren.

  • In de resultaten van de cmdlet Get-Command wordt nu een kolom Versie weergegeven; er is een nieuwe eigenschap Version toegevoegd aan de klasse CommandInfo. Get-Command toont opdrachten uit meerdere versies van dezelfde module. De eigenschap Version maakt ook deel uit van afgeleide klassen van CmdletInfo: CmdletInfo en ApplicationInfo.

  • Met een nieuwe Get-ItemPropertyValue cmdlet kunt u de waarde van een eigenschap ophalen zonder puntnotatie te gebruiken. In oudere versies van Windows PowerShell kunt u bijvoorbeeld de volgende opdracht uitvoeren om de waarde van de eigenschap Application Base van de registersleutel PowerShellEngine op te halen:

    $keypath = 'HKLM:\SOFTWARE\Microsoft\PowerShell\3\PowerShellEngine'
    (Get-ItemProperty -Path $keypath -Name  ApplicationBase).ApplicationBase
    

    Vanaf Windows PowerShell 5.0 kunt u uitvoeren

    $keypath = 'HKLM:\SOFTWARE\Microsoft\PowerShell\3\PowerShellEngine'
    Get-ItemPropertyValue -Path $keypath -Name ApplicationBase
    
  • Een nieuwe NetworkSwitch-module bevat cmdlets waarmee u switch, VLAN (virtual LAN) en basispoortconfiguratie van netwerkswitch layer 2 kunt toepassen op Windows Server 2012 R2 (en latere releases) logo-gecertificeerde netwerkswitches.

  • De parameter FullyQualifiedName is toegevoegd aan Import-Module en Remove-Module cmdlets, ter ondersteuning van het opslaan van meerdere versies van één module.

  • Save-Help, Update-Help, Import-PSSession, Export-PSSession en Get-Command hebben een nieuwe parameter, FullyQualifiedModule, van het type ModuleSpecification. Voeg deze parameter toe om een module op te geven met de volledig gekwalificeerde naam.

  • De waarde van $PSVersionTable.PSVersion is bijgewerkt naar 5.0.

Nieuwe functies in Windows PowerShell Desired State Configuration

  • Windows PowerShell taalverbeteringen kunt u Windows PowerShell Desired State Configuration (DSC)-resources definiëren met behulp van klassen. Import-DscResource is nu een echt dynamisch trefwoord; Windows PowerShell parseert de hoofdmodule van de opgegeven module en zoekt naar klassen die het kenmerk DscResource bevatten. U kunt nu klassen gebruiken om DSC-resources te definiëren, waarin geen MOF-bestand of een DSCResource-submap in de modulemap is vereist. Een Windows PowerShell modulebestand kan meerdere DSC-resourceklassen bevatten.

  • Er is een nieuwe parameter, ThrottleLimit, toegevoegd aan de volgende cmdlets in de module PSDesiredStateConfiguration. Voeg de parameter ThrottleLimit toe om het aantal doelcomputers of apparaten op te geven waarop u de opdracht tegelijkertijd wilt laten werken.

    • Get-DscConfiguration
    • Get-DscConfigurationStatus
    • Get-DscLocalConfigurationManager
    • Restore-DscConfiguration
    • Test-DscConfiguration
    • Compare-DscConfiguration
    • Publish-DscConfiguration
    • Set-DscLocalConfigurationManager
    • Start-DscConfiguration
    • Update-DscConfiguration
  • Met gecentraliseerde DSC-foutrapportage wordt uitgebreide foutinformatie niet alleen vastgelegd in het gebeurtenislogboek, maar kan deze ook worden verzonden naar een centrale locatie voor latere analyse. U kunt deze centrale locatie gebruiken om DSC-configuratiefouten op te slaan die zijn opgetreden voor elke server in hun omgeving. Nadat de rapportserver is gedefinieerd in de metaconfiguratie, worden alle fouten verzonden naar de rapportserver en vervolgens opgeslagen in een database. U kunt deze functionaliteit instellen, ongeacht of een doelknooppunt is geconfigureerd voor het ophalen van configuraties van een pull-server.

  • Verbeteringen in Windows PowerShell ISE vereenvoudigen het ontwerpen van DSC-resources. U kunt nu het volgende doen.

    • Geef alle DSC-resources in een configuratie- of knooppuntblok weer door Ctrl+spatiebalk in te voeren op een lege regel in het blok.
    • Automatische voltooiing van resource-eigenschappen van het opsommingstype.
    • Automatische voltooiing van de eigenschap DependsOn van DSC-resources, op basis van andere resource-exemplaren in de configuratie.
    • Verbeterde tabvoltooiing van resource-eigenschapswaarden.
  • Een nieuw DscLocalConfigurationManager-kenmerk wijst een configuratieblok aan als een metaconfiguratie, die wordt gebruikt om de lokale DSC-Configuration Manager te configureren. Met dit kenmerk wordt een configuratie beperkt tot alleen items die de lokale DSC-Configuration Manager configureren. Tijdens de verwerking genereert deze configuratie een *.meta.mof-bestand dat vervolgens naar de juiste doelknooppunten wordt verzonden door de cmdlet Set-DscLocalConfigurationManager uit te voeren.

  • Gedeeltelijke configuraties zijn nu toegestaan in Windows PowerShell 5.0. U kunt configuratiedocumenten in fragmenten aan een knooppunt leveren. Als u wilt dat een knooppunt meerdere fragmenten van een configuratiedocument ontvangt, moet de lokale Configuration Manager van het knooppunt eerst worden ingesteld om de verwachte fragmenten op te geven.

  • Synchronisatie tussen computers is nieuw in DSC in Windows PowerShell 5.0. Met behulp van de ingebouwde WaitFor*-resources (WaitForAll, WaitForAny en WaitForSome) kunt u nu afhankelijkheden tussen computers opgeven tijdens configuratie-uitvoeringen, zonder externe indelingen. Deze resources bieden knooppunt-naar-knooppuntsynchronisatie met behulp van CIM-verbindingen via het WS-Man-protocol. Een configuratie kan wachten tot de specifieke resourcestatus van een andere computer is gewijzigd.

  • Just Enough Administration (JEA), een nieuwe beveiligingsfunctie voor delegaties, maakt gebruik van DSC en Windows PowerShell beperkte runspaces om ondernemingen te helpen beveiligen tegen gegevensverlies of inbreuk door werknemers, opzettelijk of onbedoeld. Zie Just Enough Administration (Just Enough Administration) voor meer informatie over JEA, waaronder waar u de xJEA DSC-resource kunt downloaden.

  • De volgende nieuwe cmdlets zijn toegevoegd aan de module PSDesiredStateConfiguration.

    • Een nieuwe Get-DscConfigurationStatus cmdlet haalt algemene informatie op over de configuratiestatus van een doelknooppunt. U kunt de status van de laatste of van alle configuraties ophalen.
    • Een nieuwe Compare-DscConfiguration cmdlet vergelijkt een opgegeven configuratie met de werkelijke status van een of meer doelknooppunten.
    • Een nieuwe Publish-DscConfiguration cmdlet kopieert een configuratie-MOF-bestand naar een doelknooppunt, maar past de configuratie niet toe. De configuratie wordt toegepast tijdens de volgende consistentiepass of wanneer u de cmdlet Update-DscConfiguration uitvoert.
    • Met een nieuwe Test-DscConfiguration cmdlet kunt u controleren of een resulterende configuratie overeenkomt met de gewenste configuratie, waarbij True wordt geretourneerd als de configuratie overeenkomt met de gewenste configuratie of Onwaar als de werkelijke configuratie niet overeenkomt met de gewenste configuratie.
    • Een nieuwe Update-DscConfiguration cmdlet dwingt af dat een configuratie wordt verwerkt. Als de lokale Configuration Manager zich in de pull-modus bevindt, haalt de cmdlet de configuratie op van de pull-server voordat deze wordt toegepast.

Nieuwe functies in Windows PowerShell ISE

  • U kunt nu scripts en bestanden voor externe Windows PowerShell bewerken in een lokale kopie van Windows PowerShell ISE door Enter-PSSession uit te voeren om een externe sessie te starten op de computer waarop de bestanden die u wilt bewerken, opslaat en vervolgens uit te voerenPSEdit <path and file name on the remote computer>. Deze functie vereenvoudigt het bewerken van Windows PowerShell bestanden die zijn opgeslagen op de Server Core-installatieoptie van Windows Server, waar Windows PowerShell ISE niet kan worden uitgevoerd.
  • De cmdlet Start-Transcript wordt nu ondersteund in Windows PowerShell ISE.
  • U kunt nu fouten opsporen in externe scripts in Windows PowerShell ISE.
  • Een nieuwe menuopdracht, Alles verbreken (Ctrl+B), wordt in het foutopsporingsprogramma voor zowel lokale als extern uitgevoerde scripts.

Nieuwe functies in Windows PowerShell Web Services (Management OData IIS-extensie)

  • Vanaf Windows PowerShell 5.0 kunt u een set Windows PowerShell cmdlets genereren op basis van de functionaliteit van een bepaald OData-eindpunt door de cmdlet Export-ODataEndpointProxy uit te voeren.

Belangrijke oplossingen voor fouten in Windows PowerShell 5.0

  • Windows PowerShell 5.0 bevat een nieuwe COM-implementatie, die aanzienlijke prestatieverbeteringen biedt wanneer u met COM-objecten werkt.

Ga naar de volgende websites voor meer informatie over Windows PowerShell 5.0:

ZIE OOK

about_Classes

about_Debuggers

about_Desired_State_Configuration

about_Updatable_Help

Save-Help

Get-Module

Debug-Job

Update-Help

Get-Process

Remove-Computer

Set-ExecutionPolicy

Add-Computer

ConvertFrom-String

Invoke-RestMethod

Set-JobTrigger

Set-ScheduledJob

New-JobTrigger

Register-ScheduledJob

Enable-JobTrigger

Disable-JobTrigger

ZOEKWOORDEN

Nieuw in Windows PowerShell 5.0