Dela via


about_Windows_PowerShell_5.0

KORT BESKRIVNING

Beskriver nya funktioner som ingår i Windows PowerShell 5.0.

LÅNG BESKRIVNING

Windows PowerShell 5.0 innehåller betydande nya funktioner som utökar användningen, förbättrar användbarheten och gör att du kan styra och hantera Windows-baserade miljöer enklare och mer omfattande.

Windows PowerShell 5.0 är bakåtkompatibelt. Cmdlets, providers, moduler, snapin-moduler, skript, funktioner och profiler som har utformats för Windows PowerShell 4.0, Windows PowerShell 3.0 och Windows PowerShell 2.0 fungerar vanligtvis i Windows PowerShell 5.0 utan ändringar.

Windows PowerShell 5.0 installeras som standard på Windows Server Technical Preview och Windows Technical Preview. Om du vill installera Windows PowerShell 5.0 på Windows Server 2012 R2, Windows 8.1 Enterprise eller Windows 8.1 Pro laddar du ned och installerar Windows Management Framework 5.0. Se till att läsa nedladdningsinformationen och uppfylla alla systemkrav innan du installerar Windows Management Framework 5.0 Preview.

Du kan också läsa om ändringar i Windows PowerShell 5.0 i Nyheter i Windows PowerShell.

NYA FUNKTIONER

Nya funktioner i Windows PowerShell

  • Från och med Windows PowerShell 5.0 kan du utveckla med hjälp av klasser, med hjälp av formell syntax och semantik som liknar andra objektorienterade programmeringsspråk. Class, Enum och andra nyckelord har lagts till i Windows PowerShell-språket för att stödja den nya funktionen. Mer information om hur du arbetar med klasser finns i about_Classes.

  • I samarbete med Microsoft Research har en ny cmdlet, ConvertFrom-String, lagts till. Med ConvertFrom-String kan du extrahera och tolka strukturerade objekt från innehållet i textsträngar. Mer information finns i ConvertFrom-String.

  • En ny modul, Microsoft.PowerShell.Archive, innehåller cmdlets som gör att du kan komprimera filer och mappar till arkivfiler (även kallat ZIP), extrahera filer från befintliga ZIP-filer och uppdatera ZIP-filer med nyare versioner av filer som komprimerats i dem.

  • En ny modul, OneGet, låter dig upptäcka och installera programvarupaket på Internet. OneGet-modulen är en hanterare eller multiplexer av befintliga pakethanterare (även kallade paketleverantörer) för att förena Windows-pakethantering med ett enda Windows PowerShell-gränssnitt.

  • Med en ny modul, PowerShellGet, kan du hitta, installera, publicera och uppdatera moduler och DSC-resurser i PowerShell-resursgalleriet eller på en intern modullagringsplats som du kan konfigurera genom att köra cmdleten Register-PSRepository.

  • New-Item, Remove-Item och Get-ChildItem har förbättrats för att stödja skapande och hantering av symboliska länkar. Parametern ItemType för New-Item accepterar ett nytt värde, SymbolicLink. Nu kan du skapa symboliska länkar på en enda rad genom att köra cmdleten New-Item.

  • Windows PowerShell-transkription har förbättrats så att den gäller för alla värdprogram (till exempel Windows PowerShell ISE) utöver konsolvärden (powershell.exe). Transkriptionsalternativ (inklusive aktivering av en systemomfattande avskrift) kan konfigureras genom att aktivera inställningen Aktivera PowerShell-transkriptionsgrupprincip, som finns i Administrativa mallar/Windows-komponenter/Windows PowerShell.

  • Med en ny funktion för detaljerad skriptspårning kan du aktivera detaljerad spårning och analys av Windows PowerShell-skriptanvändning i ett system. När du har aktiverat detaljerad skriptspårning loggar Windows PowerShell alla skriptblock i händelseloggen ETW (Event Tracing for Windows), Microsoft-Windows-PowerShell/Operational.

  • Från och med Windows PowerShell 5.0 stöder nya cmdlets för kryptografisk meddelandesyntax kryptering och dekryptering av innehåll med hjälp av IETF-standardformatet för kryptografiskt skydd av meddelanden enligt RFC5652. Cmdletarna Get-CmsMessage, Protect-CmsMessage och Unprotect-CmsMessage har lagts till i modulen Microsoft.PowerShell.Security.

  • Med nya cmdlets i modulen Microsoft.PowerShell.Utility, Get-Runspace, Debug-Runspace, Get-RunspaceDebug, Enable-RunspaceDebug och Disable-RunspaceDebug kan du ange felsökningsalternativ för ett körningsutrymme och starta och stoppa felsökning på ett körningsutrymme. För felsökning av godtyckliga körningsutrymmen – det vill säga körningsutrymmen som inte är standardkörningsutrymmet för en Windows PowerShell-konsol eller Windows PowerShell ISE-session – kan du med Windows PowerShell ange brytpunkter i ett skript och har lagt till brytpunkter som hindrar skriptet från att köras tills du kan koppla en felsökare för att felsöka körningsskriptet. Kapslat felsökningsstöd för godtyckliga körningsutrymmen har lagts till i Windows PowerShell-skriptfelsökaren för körningsutrymmen.

  • Med nya cmdlets Enter-PSHostProcess och Exit-PSHostProcess kan du felsöka Windows PowerShell-skript i processer som är separata från den aktuella processen som körs i Windows PowerShell-konsolen. Kör Enter-PSHostProcess för att ange eller koppla till ett specifikt process-ID och kör sedan Get-Runspace för att returnera de aktiva körningsutrymmena i processen. Kör Exit-PSHostProcess för att koppla från processen när du är klar med felsökningen av skriptet i processen.

  • En ny Wait-Debugger-cmdlet har lagts till i modulen Microsoft.PowerShell.Utility. Du kan köra Wait-Debugger för att stoppa ett skript i felsökningsprogrammet innan du kör nästa instruktion i skriptet.

  • Felsökningsprogrammet för Windows PowerShell Workflow har nu stöd för slutförande av kommandon eller flikar, och du kan felsöka kapslade arbetsflödesfunktioner. Nu kan du trycka på Ctrl+Break för att ange felsökaren i ett skript som körs, i både lokala sessioner och fjärrsessioner och i ett arbetsflödesskript.

  • En Debug-Job-cmdlet har lagts till i modulen Microsoft.PowerShell.Core för att felsöka jobbskript som körs för Windows PowerShell arbetsflöde, bakgrund och jobb som körs i fjärrsessioner.

  • Ett nytt tillstånd, AtBreakpoint, har lagts till för Windows PowerShell jobb. Tillståndet AtBreakpoint gäller när ett jobb kör ett skript som innehåller angivna brytpunkter och skriptet har nått en brytpunkt. När ett jobb stoppas vid en brytpunkt för felsökning måste du felsöka jobbet genom att köra cmdleten Debug-Job.

  • Windows PowerShell 5.0 implementerar stöd för flera versioner av en enda Windows PowerShell-modul i samma mapp i $PSModulePath. En RequiredVersion egenskap har lagts till i klassen ModuleSpecification för att hjälpa dig att få önskad version av en modul. Den här egenskapen är ömsesidigt uteslutande med egenskapen ModuleVersion. RequiredVersion stöds nu som en del av värdet för parametern FullyQualifiedName för cmdletarna Get-Module, Import-Module och Remove-Module.

  • Nu kan du utföra validering av modulversionen genom att köra cmdleten Test-ModuleManifest.

  • Resultatet av cmdleten Get-Command visar nu kolumnen Version. en ny Version-egenskap har lagts till i klassen CommandInfo. Get-Command visar kommandon från flera versioner av samma modul. Egenskapen Version är också en del av härledda klasser av CmdletInfo: CmdletInfo och ApplicationInfo.

  • Med en ny Get-ItemPropertyValue-cmdlet kan du hämta värdet för en egenskap utan att använda punktnotation. I äldre versioner av Windows PowerShell kan du till exempel köra följande kommando för att hämta värdet för Application Base egenskapen för PowerShellEngine registernyckeln:

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

    Från och med Windows PowerShell 5.0 kan du köra

    $keypath = 'HKLM:\SOFTWARE\Microsoft\PowerShell\3\PowerShellEngine'
    Get-ItemPropertyValue -Path $keypath -Name ApplicationBase
    
  • En ny NetworkSwitch-modul innehåller cmdlets som gör att du kan använda switch, virtuellt LAN (VLAN) och grundläggande Layer 2-nätverksväxelportkonfiguration för Windows Server 2012 R2 (och senare versioner) logotypcertifierade nätverksväxlar.

  • Parametern FullyQualifiedName har lagts till i cmdletarna Import-Module och Remove-Module för att stödja lagring av flera versioner av en enda modul.

  • Save-Help, Update-Help, Import-PSSession, Export-PSSession och Get-Command har en ny parameter, FullyQualifiedModule, av typen ModuleSpecification. Lägg till den här parametern för att ange en modul med dess fullständigt kvalificerade namn.

  • Värdet för $PSVersionTable.PSVersion har uppdaterats till 5.0.

Nya funktioner i Windows PowerShell Desired State Configuration

  • Med språkförbättringar i Windows PowerShell kan du definiera Windows PowerShell DSC-resurser (Desired State Configuration) med hjälp av klasser. Import-DscResource är nu ett verkligt dynamiskt nyckelord; Windows PowerShell parsar den angivna modulens rotmodul och söker efter klasser som innehåller attributet DscResource. Nu kan du använda klasser för att definiera DSC-resurser, där varken en MOF-fil eller en DSCResource-undermapp i modulmappen krävs. En Windows PowerShell-modulfil kan innehålla flera DSC-resursklasser.

  • En ny parameter, ThrottleLimit, har lagts till i följande cmdlets i PSDesiredStateConfiguration-modulen. Lägg till parametern ThrottleLimit för att ange antalet måldatorer eller enheter som du vill att kommandot ska fungera på samtidigt.

    • Get-DscConfiguration
    • Get-DscConfigurationStatus
    • Get-DscLocalConfigurationManager
    • Restore-DscConfiguration
    • Test-DscConfiguration
    • Compare-DscConfiguration
    • Publish-DscConfiguration
    • Set-DscLocalConfigurationManager
    • Start-DscConfiguration
    • Update-DscConfiguration
  • Med centraliserad DSC-felrapportering loggas inte bara omfattande felinformation i händelseloggen, utan den kan skickas till en central plats för senare analys. Du kan använda den här centrala platsen för att lagra DSC-konfigurationsfel som har inträffat för alla servrar i deras miljö. När rapportservern har definierats i metakonfigurationen skickas alla fel till rapportservern och lagras sedan i en databas. Du kan konfigurera den här funktionen oavsett om en målnod är konfigurerad för att hämta konfigurationer från en pull-server eller inte.

  • Förbättringar av Windows PowerShell ISE underlättar redigering av DSC-resurser. Du kan nu göra följande.

    • Visa en lista över alla DSC-resurser i ett konfigurations- eller nodblock genom att ange Ctrl+Blanksteg på en tom rad i blocket.
    • Automatisk komplettering av resursegenskaper för uppräkningstypen.
    • Automatisk slutförande av egenskapen DependsOn för DSC-resurser, baserat på andra resursinstanser i konfigurationen.
    • Förbättrad tabbifyllning av resursegenskapsvärden.
  • Ett nytt DscLocalConfigurationManager-attribut anger ett konfigurationsblock som en metakonfiguration, som används för att konfigurera den lokala DSC-konfigurationshanteraren. Det här attributet begränsar en konfiguration till att endast innehålla objekt som konfigurerar den lokala DSC-konfigurationshanteraren. Under bearbetningen genererar den här konfigurationen en *.meta.mof fil som sedan skickas till lämpliga målnoder genom att köra cmdleten Set-DscLocalConfigurationManager.

  • Partiella konfigurationer tillåts nu i Windows PowerShell 5.0. Du kan leverera konfigurationsdokument till en nod i fragment. För att en nod ska kunna ta emot flera fragment av ett konfigurationsdokument måste nodens lokala konfigurationshanterare först ställas in för att ange de förväntade fragmenten.

  • Synkronisering mellan datorer är nytt i DSC i Windows PowerShell 5.0. Genom att använda de inbyggda WaitFor*-resurserna (WaitForAll, WaitForAny och WaitForSome) kan du nu ange beroenden mellan datorer under konfigurationskörningar, utan externa orkestreringar. Dessa resurser tillhandahåller nod-till-nod-synkronisering med hjälp av CIM-anslutningar via WS-Man-protokollet. En konfiguration kan vänta på att en annan dators specifika resurstillstånd ändras.

  • JEA, en ny säkerhetsfunktion för delegering, utnyttjar DSC- och Windows PowerShell-begränsade körningsutrymmen för att skydda företag från dataförlust eller kompromettering av anställda, oavsett om det är avsiktligt eller oavsiktligt. Mer information om JEA, inklusive var du kan ladda ned xJEA DSC-resursen, finns i Lagom mycket administration.

  • Följande nya cmdlets har lagts till i PSDesiredStateConfiguration-modulen.

    • En ny Get-DscConfigurationStatus-cmdlet hämtar information på hög nivå om konfigurationsstatus från en målnod. Du kan få status för den sista eller för alla konfigurationer.
    • En ny Compare-DscConfiguration-cmdlet jämför en angiven konfiguration med det faktiska tillståndet för en eller flera målnoder.
    • En ny Publish-DscConfiguration-cmdlet kopierar en MOF-konfigurationsfil till en målnod, men tillämpar inte konfigurationen. Konfigurationen tillämpas under nästa konsekvenspass, eller när du kör cmdleten Update-DscConfiguration.
    • Med en ny Test-DscConfiguration-cmdlet kan du kontrollera att en resulterande konfiguration matchar den önskade konfigurationen och returnera antingen Sant om konfigurationen matchar den önskade konfigurationen eller Falskt om den faktiska konfigurationen inte matchar den önskade konfigurationen.
    • En ny Update-DscConfiguration-cmdlet tvingar en konfiguration att bearbetas. Om den lokala Configuration Manager är i pull-läge hämtar cmdleten konfigurationen från pull-servern innan den tillämpas.

Nya funktioner i Windows PowerShell ISE

  • Nu kan du redigera fjärranslutna Windows PowerShell skript och filer i en lokal kopia av Windows PowerShell ISE genom att köra Enter-PSSession för att starta en fjärrsession på den dator som lagrar de filer som du vill redigera och sedan köra PSEdit <path and file name on the remote computer>. Den här funktionen underlättar redigering av Windows PowerShell-filer som lagras på Server Core-installationsalternativet för Windows Server, där Windows PowerShell ISE inte kan köras.
  • Cmdleten Start-Transcript stöds nu i Windows PowerShell ISE.
  • Nu kan du felsöka fjärrskript i Windows PowerShell ISE.
  • Ett nytt menykommando, Bryt alla (Ctrl+B), bryter sig in i felsökaren för både lokala skript och skript som körs via fjärranslutning.

Nya funktioner i Windows PowerShell Web Services (Management OData IIS-tillägg)

  • Från och med Windows PowerShell 5.0 kan du generera en uppsättning Windows PowerShell-cmdlets baserat på de funktioner som exponeras av en viss OData-slutpunkt genom att köra cmdleten Export-ODataEndpointProxy.

Viktiga felkorrigeringar i Windows PowerShell 5.0

  • Windows PowerShell 5.0 innehåller en ny COM-implementering som ger betydande prestandaförbättringar när du arbetar med COM-objekt.

Mer information om Windows PowerShell 5.0 finns på följande webbplatser:

SE ÄVEN

om_Klasser

about_Debuggers

about_Desired_State_Configuration

om_Uppdaterbar_Hjälp

Hjälp för sparande

Hämta-Modul

felsöka-jobb

Uppdateringshjälp

Hämta process

Ta bort- Dator

Set-ExecutionPolicy (Set-ExecutionPolicy)

Tilläggsdator

ConvertFrom-sträng

Invoke-RestMethod (Anropa-RestMethod)

Set-JobTrigger

Set-ScheduledJob (Set-ScheduledJob)

New-JobTrigger

Registrera-schemalagt jobb

Aktivera-JobTrigger

Disable-JobTrigger

NYCKELORD

Nyheter i Windows PowerShell 5.0