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 viktiga nya funktioner som utökar dess användning, förbättrar dess användbarhet och gör att du kan styra och hantera Windows-baserade miljöer enklare och mer omfattande.
Windows PowerShell 5.0 är bakåtkompatibel. Cmdletar, providrar, 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. Läs nedladdningsinformationen och uppfyll 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. Klass, Uppräkning och andra nyckelord har lagts till i Windows PowerShell språk 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. ConvertFrom-String kan du extrahera och parsa strukturerade objekt från innehållet i textsträngar. Mer information finns i ConvertFrom-String.
En ny modul, Microsoft.PowerShell.Archive, innehåller cmdletar som gör att du kan komprimera filer och mappar till arkivfiler (även kallade ZIP-filer), extrahera filer från befintliga ZIP-filer och uppdatera ZIP-filer med nyare versioner av filer som komprimerats i dem.
Med en ny modul, OneGet, kan du identifiera och installera programvarupaket på Internet. OneGet-modulen är en hanterare eller multiplexer av befintliga pakethanterare (kallas även paketproviders) 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 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-transkription grupprincip som finns i Administrativa mallar/Windows-komponenter/Windows PowerShell.
Med en ny detaljerad skriptspårningsfunktion 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 Händelsespårning för Windows (ETW), Microsoft-Windows-PowerShell/Operational.
Från och med Windows PowerShell 5.0 stöder nya cmdletar för kryptografisk meddelandesyntax kryptering och dekryptering av innehåll med hjälp av IETF-standardformatet för kryptografiskt skydd av meddelanden som dokumenteras av RFC5652. Cmdletarna Get-CmsMessage, Protect-CmsMessage och Unprotect-CmsMessage har lagts till i modulen Microsoft.PowerShell.Security.
Med nya cmdletar i modulen Microsoft.PowerShell.Utility, Get-Runspace, Debug-Runspace, Get-RunspaceDebug, Enable-RunspaceDebug och Disable-RunspaceDebug kan du ställa in felsökningsalternativ på ett körningsutrymme och starta och stoppa felsökning på en körningsplats. För felsökning av godtyckliga runspaces – det vill sägs att runspaces som inte är standardkörningsutrymmet för en Windows PowerShell-konsol eller Windows PowerShell ISE-session – Windows PowerShell låter dig ange brytpunkter i ett skript och har lagt till brytpunkter som hindrar skriptet från att köras tills du kan koppla ett felsökningsprogram för att felsöka körningsskriptet. Stöd för kapslad felsökning för godtyckliga runspaces har lagts till i felsökningsprogrammet för Windows PowerShell skript för runspaces.
Med nya cmdletar 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 att ange eller ansluta till ett specifikt process-ID och kör sedan Get-Runspace för att returnera de aktiva runspacesna 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 arbetsflöde har nu stöd för slutförande av kommandon eller flikar, och du kan felsöka kapslade arbetsflödesfunktioner. Du kan nu 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 Microsoft.PowerShell.Core-modulen 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. AtBreakpoint-tillståndet gäller när ett jobb kör ett skript som innehåller uppsättnings brytpunkter och skriptet har nått en brytpunkt. När ett jobb stoppas vid en felsöknings brytpunkt 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 som hjälper dig att få den önskade versionen 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 i cmdletarna Get-Module, Import-Module och Remove-Module.
Nu kan du utföra modulversionsvalidering genom att köra cmdleten Test-ModuleManifest.
Resultatet av cmdleten Get-Command visar nu kolumnen Version. en ny versionegenskap 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 cmdletar som gör att du kan använda växel, virtuellt LAN (VLAN) och grundläggande layer 2-nätverksväxelportkonfiguration för att Windows Server 2012 R2 (och senare versioner) logotypcertifierade nätverksväxlar.
Parametern FullyQualifiedName har lagts till i Import-Module och Remove-Module cmdletar 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
Windows PowerShell språkförbättringar kan du definiera Windows PowerShell Desired State Configuration(DSC)-resurser 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 cmdletar i modulen PSDesiredStateConfiguration. Lägg till parametern ThrottleLimit för att ange antalet måldatorer eller enheter där du vill att kommandot ska fungera 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 omfattande felinformation inte bara i händelseloggen, utan 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 har konfigurerats för att hämta konfigurationer från en hämtningsserver eller inte.
Förbättringar av Windows PowerShell ISE underlättar redigering av DSC-resurser. Nu kan du göra följande.
- Visa en lista över alla DSC-resurser i en konfiguration eller ett nodblock genom att ange Ctrl+Blanksteg på en tom rad i blocket.
- Automatiskt slutförande av resursegenskaper för uppräkningstypen.
- Automatiskt 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 DSC Local Configuration Manager. Det här attributet begränsar en konfiguration till att endast innehålla objekt som konfigurerar DSC Local Configuration Manager. 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 Configuration Manager först anges 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 tills en annan dators specifika resurstillstånd ändras.
Just Enough Administration (JEA), en ny delegeringssäkerhetsfunktion, utnyttjar DSC och Windows PowerShell begränsade runspaces för att skydda företag från dataförlust eller komprometterande av anställda, oavsett om de är avsiktliga eller oavsiktliga. Mer information om JEA, inklusive var du kan ladda ned xJEA DSC-resursen, finns i Just Enough Administration.
Följande nya cmdletar har lagts till i modulen PSDesiredStateConfiguration.
- En ny Get-DscConfigurationStatus cmdlet hämtar information på hög nivå om konfigurationsstatus från en målnod. Du kan hämta status för den sista eller 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 önskad konfiguration eller Falskt om den faktiska konfigurationen inte matchar önskad konfiguration.
- 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ärrskript och filer för Windows PowerShell 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 gör det enklare att redigera Windows PowerShell filer som lagras i 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, Break All (Ctrl+B), bryter sig in i felsökningsprogrammet för både lokala och fjärrstyrda skript.
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 cmdletar baserat på de funktioner som exponeras av en viss OData-slutpunkt genom att köra Export-ODataEndpointProxy-cmdleten.
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
about_Desired_State_Configuration
SÖKORD
Nyheter i Windows PowerShell 5.0