Megosztás a következőn keresztül:


Mi újság a Windows PowerShell 5.0-ban

A Windows PowerShell 5.0 jelentős új funkciókat tartalmaz, amelyek kiterjesztik a használatát, javítják a használhatóságát, és lehetővé teszik, hogy könnyebben és átfogóbban irányítsd és kezeld a Windows-alapú környezeteket.

A Windows PowerShell 5.0 visszafelé kompatibilis. A Windows PowerShell 4.0, Windows PowerShell 3.0 és Windows PowerShell 2.0 számára tervezett parancsnokok, szolgáltatók, modulok, snap-inek, szkriptek, függvények és profilok általában változtatás nélkül működnek Windows PowerShell 5.0-ban.

Windows PowerShell telepítése

A Windows PowerShell 5.0 alapértelmezés szerint telepítve van Windows Server 2016 Technical Preview és Windows 10 verzión.

A Windows PowerShell 5.0 telepítéséhez Windows Server 2012 R2-re, Windows 8.1 Enterprise-ra vagy Windows 8.1 Pro-ra töltse le és telepítse a Windows Management Framework 5.0-t. Mindenképp olvasd el a letöltési részleteket, és teljesítsd minden rendszerkövetelményt, mielőtt telepíted a Windows Management Framework 5.0-t.

Ebben a témakörben

Windows PowerShell 4.0 frissítések a 2014 novemberi frissítési összesítésben (KB 3000850)

Számos frissítés és fejlesztés érhető el a Windows PowerShell 4.0 Windows PowerShell Desired State Configuration (DSC) verzióhoz a Windows RT 8.1, Windows 8.1 és Windows Server 2012 R2 (KB3000850) 2014 novemberi frissítési összesítésében . Windows PowerShell futtatásával megállapíthatod, hogy KB3000850 telepítve van-e a rendszeredre Get-Hotfix -Id KB3000850 .

  • Frissítések a PSDesiredStateConfiguration modul meglévő cmdlet-jeire

  • Új cmdletek a PSDesiredStateConfiguration modulban

  • Nyelvi fejlesztések

    • A DependsOn most már kompozit erőforrásokat támogat.
    • A DependsOn most már támogatja a számokat az erőforrás-példányok neveiben.
    • Az ürességre értékelő csomópontkifejezések már nem okoznak hibákat.
    • Egy hibát, amely akkor fordul elő, ha egy csomópontkifejezés üresnek értékelik, javított.
    • A konfigurációkat hívó konfigurációk most már működnek a Windows PowerShell konzolban.
  • Pull mód fejlesztések

    • A pull mód most már minden ZIP fájlt támogat.
    • Az AllowModuleOverwrite most már megfelelően működik.
  • Ellenállóképesség fejlesztései

    • Az új DebugMode lehetővé teszi, hogy újratöltsd az erőforrás modulokat.
    • Ha konfigurációs hiba történik, a pending.mof fájl nem törlődik.
    • A Local Configuration Manager (LCM) most már ellenállóbb, ha a metakonfigurációs beállítások megsérültek.
  • Diagnosztikai fejlesztések

    • Figyelmeztetés jelenik meg, amikor az LCM az időzítőt más beállításokra állítja be, mint amit Ön megadott.
    • A hibanaplófájlok most már tartalmazza a Windows PowerShell erőforrások hívási stackjét.
  • Rugalmasság fejlesztések

    • A LocalConfigurationManager erőforrásnak új tulajdonsága van, az ActionAfterReboot.
      • ContinueConfiguration (alapértelmezett érték): Automatikusan folytatja a konfigurációt, miután egy célcsomópont újraindul.
      • StopConfiguration: Ne folytasd automatikusan a konfigurációt egy csomópont újraindítása után.
    • A konzisztens futtatás ma már gyakrabban fordulhat elő, mint egy PULL művelet, vagy fordítva.
    • Verziókezelési támogatás: A DSC most már felismeri egy újabb kliensen generált dokumentumot ( a WMF 5.0-hoz tartozik).
  • Hibamegelőzési fejlesztések

    • A modul verziót most már a konfiguráció alkalmazása előtt kötelező alkalmazzák.
    • A DebugPreference most helyesen van beállítva a Get-, Set- vagy Test-TargetResource hívásokhoz.
  • Hitelesítéskezelési fejlesztések

    • Ma már tanúsítványt használnak, ha mind a Tanúsítvány , mind a PSDscAllowPlainTextPassword meg van jelölve.
    • A hitelesítő adatok dekódolnak, még a Get-TargetResource esetében is.
    • A metakonfigurációs hitelesítő adatok titkosítva és visszafejtettek.
    • A PSCredentialokat ma már akkor is dekódolják, amikor beágyazott objektumban vannak.
  • Beépített erőforrás-fejlesztések

    • A csomag erőforrás
      • Már nem telepít rossz csomagot (sem helyi, sem webes forrásokból).
      • Most már támogatja az HTTPS-t.
    • Most már támogatja az HTTPS a csomag erőforrásban.
    • Az archív erőforrás most már támogatja a hitelesítő adatokat.

Új funkciók a Windows PowerShell 5.0-ban

Új funkciók a Windows PowerShell-ben

  • A Windows PowerShell 5.0-tól kezdve fejleszthetsz olyan osztályokkal, formális szintaxissal és szemantikával, amelyek hasonló más objektumorientált programozási nyelvekhez. Class, Enum és más kulcsszavakat adtak hozzá a Windows PowerShell nyelvhez, hogy támogassa az új funkciót. További információkért az osztályokkal való együttműködésről lásd about_Classes.

  • A Windows PowerShell 5.0 egy új, strukturált információfolyamot vezet be, amellyel strukturált adatokat továbbíthatsz egy szkript és annak hívói (vagy a hhosting környezet) között. Most már Write-Host segítségével kibocsáthatod az információfolyamot. Az információs folyamok PowerShell.Stream-ekhez, munkákhoz, ütemezett feladatokhoz és munkafolyamatokhoz is működnek. Az alábbi funkciók támogatják az információáramlást.

    • Egy új Write-Information cmdlet, amely lehetővé teszi, hogy meghatározd, hogyan kezeli a Windows PowerShell információfolyam adatait egy parancshoz. Write-Host a Write-Information csomagolása. Write-Information egy támogatott munkafolyamat-tevékenység is.
    • Két új közös paraméter, az InformationVariable és az InformationAction lehetővé teszi, hogy meghatározd, hogyan jelennek meg egy parancsból származó információfolyam. Az InformationAction érvényes értékei a SilentlyContinue, Stop, Continue, Inquire, Ignore vagy Suspend, ahol a SilentlyContinue az alapértelmezett választás. Az InformationVariable egy stringet ad meg egy olyan változó névként, amelyhez a parancs Write-Host adatait szeretnénk elmenteni.
    • Egy új preferenciaváltozó, az InformationPreference megadja az alapértelmezett preferenciát az információfolyam adataira egy Windows PowerShell munkamenetben. Az alapértelmezett érték SilentlyContinue.
    • Két új munkafolyamat-közös paraméter, a PSInformation és az InformationAction került hozzá.
    • Amikor a Format-Table parancsot használod, a tábla oszlopai most automatikusan formázódnak azáltal, hogy az első 300 ms adatot értékelik, amely áthalad az áramlaton.
  • A Microsoft Research-szel együttműködve egy új cmdlet, a ConvertFrom-String került bevezetésre. ConvertFrom-String lehetővé teszi, hogy strukturált objektumokat kinyerj és parzálj a szöveg szöveg tartalmából. További információért lásd: ConvertFrom-String.

  • Egy új Convert-String cmdlet automatikusan formázza a szöveget egy -Example paraméterben megadott példád alapján.

  • Egy új modul, a Microsoft.PowerShell.Archive, tartalmaz cmdleteket, amelyek lehetővé teszik fájlok és mappák tömörítését archív (más néven ZIP) fájlokká, fájlok kibontását meglévő ZIP fájlokból, valamint a ZIP fájlok frissítését az újabb, betömörített fájlverziókkal.

  • Egy új modul, a PackageManagement, lehetővé teszi szoftvercsomagok felfedezését és telepítését az interneten. A PackageManagement (korábban OneGet) modul egy meglévő csomagkezelők (más néven csomagszolgáltatók) menedzsere vagy multiplexere, amely a Windows csomagkezelését egyetlen Windows PowerShell interfésszel egyesíti.

  • Egy új modul, a PowerShellGet, lehetővé teszi, hogy megtaláld, telepítsd, közzétegyél és frissítheted a modulokat és DSC erőforrásokat a PowerShell Galérián, vagy egy belső modul tárolóban, amelyet a Register-PSRepository cmdlet futtatásával beállíthatsz.

  • Egy új nyelvi kulcsszót, a Rejtettséget adták be, amely megadja, hogy egy tag (tulajdonság vagy metódus) ne jelenik meg alapértelmezettben Get-Member eredményekben (kivéve, ha hozzáadjuk a -Force paramétert). A rejtett tulajdonságok vagy metódusok sem jelennek meg az IntelliSense eredményeiben, kivéve, ha olyan kontextusban vagy, ahol a tagnak láthatónak kell lennie; Például az $This automatikus változónak rejtett tagokat kell mutatnia az osztálymetódusban.

  • Az Új-Tárgy, Eltávolítás és Get-ChildItem funkciókat fejlesztették, hogy támogatják a szimbolikus kapcsolatok létrehozását és kezelését. A -ItemType paraméter New-Item új értéket fogad el, a SymbolicLinket. Most már egyetlen sorban szimbolikus linkeket hozhatsz létre a New-Item cmdlet futtatásával.

  • Get-ChildItem van egy új -Depth paramétere is, amit a -Recurse paraméterrel használsz a rekurzió korlátozására. Például Get-ChildItem -Recurse -Depth 2 az aktuális mappából, az aktuális mappában lévő összes gyermek mappából, és az összes gyermekmappából származó eredményeket hoz.

  • Copy-Item most lehetővé teszi, hogy fájlokat vagy mappákat másolj egyik Windows PowerShell ülésről a másikba, ami azt jelenti, hogy fájlokat másolhatsz olyan munkamenetekre, amelyek távoli számítógépekhez vannak csatlakoztatva (beleértve azokat a gépeket is, amelyek Nano Servert futtatnak, így nincs más interfészük). Fájlok másolásához adjuk meg a PSSession ID-ket az új -FromSession és -ToSession paraméterek értékeként, majd adj hozzá -Path és -Destination az eredeti útvonalat és a célállomás megadásához. Például Copy-Item -Path c:\myFile.txt -ToSession $s -Destination d:\destinationFolder.

  • A Windows PowerShell átiratát továbbfejlesztették, hogy minden hóhelyalkalmazásra (például Windows PowerShell ISE) alkalmazható, a konzol hosztolója mellett (powershell.exe). Az átiratozási lehetőségek (beleértve a rendszerszintű átiratok engedélyezését is) konfigurálhatók a PowerShell átiratcsoport-szabályzat bekapcsolása beállításával, amely az Adminisztratív Sablonok/Windows Components/Windows PowerShell adatbázisban található.

  • Egy új, részletes szkriptkövetési funkció lehetővé teszi a Windows PowerShell szkripthasználat részletes követését és elemzését egy rendszeren. Miután engedélyezted a részletes szkriptkövetést, a Windows PowerShell minden script blokkot naplózza az Event Tracing for Windows (ETW) eseménynaplójába, a Microsoft-Windows-PowerShell/Operationalba.

  • A Windows PowerShell 5.0-tól kezdve az új Kriptográfiai Üzenet Szintaxis cmdlet-ek támogatják a tartalom titkosítását és visszafejtését az IETF szabványos formátummal az üzenetek kriptográfiai védelmére, ahogy azt az RFC5652 dokumentálja. A Get-CmsMessage, Protect-CmsMessage és Unprotect-CmsMessage cmdlet-eket hozzáadták a Microsoft.PowerShell.Security modulhoz.

  • Új cmdletek a Microsoft.PowerShell.Utility modulban, a Get-Runspace, Debug-Runspace, Get-RunspaceDebug, Enable-RunspaceDebug és Disable-RunspaceDebug lehetővé teszik hibakeresési opciók beállítását egy runspace-en, valamint a hibakeresést a runspace-en. Tetszőleges runspace-ek hibakereséséhez (azaz olyan runspace-ekhez, amelyek nem alapértelmezett futótérek Windows PowerShell konzolhoz vagy Windows PowerShell ISE sessionhez) a Windows PowerShell lehetővé teszi, hogy megszakítási pontokat állítsunk be egy szkriptben, és további megszakítási pontok megakadályozzák a script futtatását, amíg nem tudsz egy hibakeresőt csatlakoztatni a runspace script hibakereséséhez. A Windows PowerShell szkript hibakereső rendszerhez hozzáadták a beépített hibakeresést tetszőleges runspace-ekhez.

  • Egy új Format-Hex cmdlet került hozzá a Microsoft.PowerShell.Utility modulhoz. Format-Hex lehetővé teszi, hogy szöveges vagy bináris adatokat hexadecimális formátumban nézzünk meg.

  • Get-Clipboard és Set-Clipboard cmdleteket adtak hozzá a Microsoft.PowerShell.Utility modulba; megkönnyítik a tartalom átvitelét Windows PowerShell ülésre és onnan. A Clipboard cmdlet-ek támogatják a képeket, hangfájlokat, fájllistákat és szöveget.

  • Egy új cmdlet, a Clear-RecycleBin került a Microsoft.PowerShell.Management modulba; ez a cmdlet üríti a Recycle Bin-t egy fix meghajtó számára, amely külső meghajtókat is tartalmaz. Alapértelmezés szerint egy Clear-RecycleBin parancs megerősítésére kérnek, mert a cmdlet ConfirmImpact tulajdonsága ConfirmImpact.High-ra van beállítva.

  • Egy új cmdlet, a New-TemporaryFile lehetővé teszi, hogy ideiglenes fájlt hozz létre a szkriptkészítés részeként. Alapértelmezés szerint az új ideiglenes fájl a -ben C:\Users\<user name>\AppData\Local\Tempjön létre.

  • Az Out-File, Add-Content és Set-Content cmdlet-ek most új -NoNewline paraméterrel rendelkeznek, amely kihagy egy új sort a kimenet után.

  • A New-Guid cmdlet a .NET Framework Guid osztályt használja egy GUID generálásához, ami hasznos szkriptek vagy DSC erőforrások írásakor.

  • Mivel a fájlverzió információi félrevezetőek lehetnek, különösen a fájl javítása után, új FileVersionRaw és ProductVersionRaw szkripttulajdonságok elérhetők a FileInfo objektumokhoz. Például a következő parancsot futtathatod ezeknek a tulajdonságoknak az értékeinek megjelenítéséhez powershell.exe, ahol $pid tartalmazza a Windows PowerShell futó munkamenetének folyamatazonosítóját: Get-Process -Id $pid -FileVersionInfo | Format-List *version* -Force

  • Az új cmdlet-ek Enter-PSHostProcess és Exit-PSHostProcess lehetővé teszik, hogy Windows PowerShell szkripteket olyan folyamatokban hibáztass, amelyek külön a Windows PowerShell konzolban futó folyamattól. Futtasd Enter-PSHostProcess-t egy adott folyamatazonosító beírásához vagy hozzácsatolásához, majd futtasd Get-Runspace-t az aktív futóterek visszaküldéséhez a folyamaton belül. Futtasd Exit-PSHostProcess, hogy leválj a folyamatból, amikor befejezted a szkriptet a folyamaton belül.

  • Egy új Wait-Debugger cmdlet került hozzá a Microsoft.PowerShell.Utility modulhoz. Futtathatod Wait-Debugger-t, hogy megállítsd a szkriptet, mielőtt a következő utasítást futtatnád a szkriptben.

  • A Windows PowerShell Workflow hibakereső most már támogatja a parancsok vagy fül teljesítést, és be lehet debugálni az ágyazott munkafolyamat-függvényeket. Most már megnyomhatod a Ctrl+Break gombot, hogy beírd a hibakeresőt egy futó szkriptben, mind helyi, mind távoli ülésekben, valamint munkafolyamat-szkriptben.

  • Egy Debug-Job cmdletet adtak a Microsoft.PowerShell.Core modulba, amely a Windows PowerShell munkafolyamat, háttér és távoli munkafolyamatokban futó munkaskripteket hibáztatja.

  • Egy új állapot, az AtBreakpoint került hozzá Windows PowerShell feladatokhoz. Az AtBreakpoint állapot akkor érvényesül, ha egy munka egy szkriptet futtat, amely tartalmaz szünetpontokat, és a szkript elérte a töréspontot. Ha egy feladatot megállítanak egy hibakeresési pontnál, a Debug-Job parancsnokost kell futtatnod.

  • A Windows PowerShell 5.0 támogatja egyetlen Windows PowerShell modul több verzióját ugyanabban a mappában a $PSModulePath-ben. A ModuleSpecification osztályhoz hozzáadtak egy RequiredVersion tulajdonságot, hogy segítsen megszerezni a kívánt modulverziót; ez a tulajdonság kölcsönösen kizárja a ModuleVersion tulajdonságot. A RequiredVersion most már támogatott a Get-Module, Import-Module és Remove-Module cmdlets FullyQualifiedName paraméterének értékének részeként.

  • Most már a modulverzió ellenőrzését is elvégezheted a Test-ModuleManifest cmdlet futtatásával.

  • A Get-Command cmdlet eredményei most egy Verzió oszlopot jelenítenek meg; egy új Verzió tulajdonságot adtak hozzá a CommandInfo osztályhoz. Get-Command több verzióból származó parancsokat mutat ugyanannak a modulnak. A Verzió tulajdonság a CmdletInfo származtatott osztályainak is része: CmdletInfo és ApplicationInfo.

  • Get-Command új paraméterrel rendelkezik, a -ShowCommandInfo, amely PSObject formájában adja vissza a ShowCommand információkat. Ez különösen hasznos funkció, amikor Show-Command Windows PowerShell ISE-ben fut Windows PowerShell távoli remoting-gal. A -ShowCommandInfo paraméter helyettesíti a Microsoft.PowerShell.Utility modul meglévő Get-SerializedCommand funkcióját, de a Get-SerializedCommand szkript továbbra is elérhető az alsó szintű szkripteléshez.

  • Egy új Get-ItemPropertyValue cmdlet lehetővé teszi, hogy pontjelölés nélkül kapd meg a tulajdonság értékét. Például a Windows PowerShell régebbi verzióiban a következő parancsot futtathatod a PowerShellEngine registry kulcs Application Base tulajdonságának értékének megkapásához: (Get-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\PowerShell\3\PowerShellEngine -Name ApplicationBase). ApplicationBase. Windows PowerShell 5.0-tól kezdve futtathatodGet-ItemPropertyValue -Path HKLM:\SOFTWARE\Microsoft\PowerShell\3\PowerShellEngine-t -Name ApplicationBase-et.

  • A Windows PowerShell konzol most szintaxisszínezést használ, akárcsak a Windows PowerShell ISE-ben.

  • Egy új NetworkSwitch modul olyan cmdleteket tartalmaz, amelyek lehetővé teszik, hogy Windows Server 2012 R2 logóval rendelkező hálózati kapcsolók által használt switch, virtuális LAN (VLAN) és alapvető 2. réteg hálózati kapcsoló port konfigurációt alkalmazzunk.

  • A FullyQualifiedName paramétert hozzáadták Import-Module és Remove-Module cmdletekhez, hogy egy modul több verziójának tárolását is lehessen támogatni.

  • Save-Help, Update-Help, Import-PSSession, Export-PSSession és Get-Command új paraméterrel rendelkezik, FullyQualifiedModule, amely ModuleSpecification típusú. Ezt a paramétert adjuk hozzá, hogy egy modult a teljes minősített nevével határozd meg.

  • Az $PSVersionTable.PSVersion értéke 5.0-ra frissítve.

  • A WMF 5.0 (PowerShell 5.0) tartalmazza a Pester modult. A Pester egy egységteszt keretrendszer a PowerShellhez. Néhány egyszerű kulcsszót kínál, amelyek lehetővé teszik, hogy teszteket készítsünk a szkriptjeidhez.

Új funkciók a Windows PowerShell Desired State Configuration

  • A Windows PowerShell nyelvi fejlesztések lehetővé teszik, hogy osztályok segítségével definiáld Windows PowerShell Desired State Configuration (DSC) erőforrásokat. Import-DscResource ma már valódi dinamikus kulcsszó; A Windows PowerShell elemzi a megadott modul gyökérmodulját, keresve azokat az osztályokat, amelyek tartalmazzák a DscResource attribútumot. Most már osztályokat használhatsz DSC erőforrások definiálására, ahol sem MOF-fájl, sem DSCResource almappája a modul mappájában nem szükséges. Egy Windows PowerShell modul fájl több DSC erőforrásosztályt is tartalmazhat.
  • Egy új paraméter, a ThrottleLimit, a PSDesiredStateConfiguration modul következő cmdletjeihez került hozzáadva. Add hozzá a ThrottleLimit paramétert, hogy meghatározd, hány célszámítógépen vagy eszközön szeretnéd egyszerre működni a parancsot.
    • Get-DscConfiguration
    • Get-DscConfigurationStatus
    • Get-DscLocalConfigurationManager
    • Restore-DscConfiguration
    • Test-DscConfiguration
    • Compare-DscConfiguration
    • Publish-DscConfiguration
    • Set-DscLocalConfigurationManager
    • Start-DscConfiguration
    • Update-DscConfiguration
  • A központosított DSC hibajelentéssel nemcsak a gazdag hibainformációkat rögzítik az eseménynaplóba, hanem egy központi helyre is elküldhetők későbbi elemzésre. Ezt a központi helyet használhatod DSC konfigurációs hibák tárolására, amelyek bármely szervernél előfordultak a környezetükben. Miután a jelentés szerver a meta-konfigurációban definiálódott, minden hiba elküldi a jelentési szervernek, majd egy adatbázisban tárolják. Ezt a funkciót beállíthatod attól, hogy egy célcsomópont be van állítva, hogy a pull szerverről húzza le a konfigurációkat.
  • A Windows PowerShell ISE fejlesztései megkönnyítik a DSC erőforrás-szerzőséget. Most már a következőket teheted.
    • A konfiguráción vagycsomópontblokkon belüli DSC erőforrásait úgy soroljuk be, hogy a blokkoban lévő üres sorra írjuk be a Ctrl+Space billentyűt.
    • Automatikus befejezés az enumerációs típus erőforrás-tulajdonságain.
    • Automatikus befejezés a DSC erőforrások DependsOn tulajdonságán, a konfigurációban lévő más erőforrás-példányok alapján.
    • Javított fül kiegészítése az erőforrás tulajdonságok értékeiben.
  • A felhasználó most már egy meghatározott hitelesítő adatkészlet alatt futtathat egy erőforrást, ha hozzáadja a PSDscRunAsCredential attribútumot egy Node blokkhoz. Például PSDscRunAsCredential = Get-Credential Contoso\DscUser. Ez a funkció hasznos olyan konfigurációk létrehozására, amelyek Windows Installert és futtatható telepítőket futtatnak, hozzáférnek a felhasználónkénti adatbázis kapcsához, vagy más feladatokat végeznek a jelenlegi felhasználói kontextuson kívül.
  • A Konfiguráció kulcsszóhoz hozzáadták a 32 bites (x86-os alapú) támogatást.
  • A Windows PowerShell most már támogatja az egyedi DSC konfigurációk támogatását, amelyet a generált konfigurációs függvényhez hozzáadva határoz meg a [CmdletBinding()] opciót.
  • Egy új DscLocalConfigurationManager attribútum egy konfigurációs blokkot meta-konfigurációként jelöl meg, amelyet a DSC Local Configuration Manager konfigurálására használnak. Ez az attribútum csak olyan elemeket tartalmaz, amelyek a DSC Local Configuration Manager-t konfigurálják. A feldolgozás során ez a konfiguráció egy *.meta.mof fájlt generál, amelyet a Set-DscLocalConfigurationManager cmdlet futtatásával a megfelelő célcsomópontoknak küldenek.
  • A részleges konfigurációk most már engedélyezettek a Windows PowerShell 5.0-ban. Konfigurációs dokumentumokat töredékekben lehet továbbítani egy csomópontnak. Ahhoz, hogy egy csomópont több konfigurációs dokumentum töredéket kapjon, először be kell állítani a várható fragmentumokat
  • A számítógépek közötti szinkronizáció új a DSC-ben a Windows PowerShell 5.0-ban. a beépített WaitFor* erőforrások (WaitForAll, WaitForAny és WaitForSome) használatával most már konfigurálás közben konfigurálás közben megadhatod a számítógépek közötti függőséget, külső orkrárációk nélkül. Ezek az erőforrások csomópontok közötti szinkronizációt biztosítanak CIM csatlakozásokkal a WS-Man protokollon keresztül. Egy konfiguráció várhat, amíg egy másik számítógép konkrét erőforrás állapota megváltozik.
  • A Just Enough Administration (JEA), egy új delegációs biztonsági funkció, DSC és Windows PowerShell korlátozott runspace-eket használ, hogy megvédje a vállalatokat az alkalmazottak által elkövetett adatvesztéstől vagy kompromittálattól, legyen az szándékos vagy akaratlan. További információkért a JEA-ról, beleértve az xJEA DSC forrás letöltését is, lásd: Just Enough Administration.
  • A következő új cmdleteket adták hozzá a PSDesiredStateConfiguration modulhoz.
    • Egy új Get-DscConfigurationStatus cmdlet kap magas szintű információkat a konfigurációs állapotról egy célcsomóponttól. Az utolsó vagy minden konfiguráció státuszát meg lehet szerezni.
    • Egy új Compare-DscConfiguration cmdlet összehasonlítja egy meghatározott konfigurációt egy vagy több célcsomópont tényleges állapotával.
    • Egy új Publish-DscConfiguration cmdlet egy konfigurációs MOF fájlt másol egy célcsomópontra, de nem alkalmazza a konfigurációt. A konfigurációt a következő konzisztencia átadás során alkalmazzák, vagy amikor a Update-DscConfiguration cmdletet futtatod.
    • Egy új Test-DscConfiguration cmdlet lehetővé teszi, hogy ellenőrizze, hogy a kapott konfiguráció megegyezik-e a kívánt konfigurációval, és True (True) jelenik meg, ha a konfiguráció megegyezik a kívánt konfigurációval, vagy False (Teş) opciót, ha a tényleges konfiguráció nem egyezik meg a kívánt konfigurációval.
    • Egy új Update-DscConfiguration cmdlet kényszeríti a konfiguráció feldolgozását. Ha a Local Configuration Manager pull módban van, a cmdlet a pull szervertől kapja meg a konfigurációt, mielőtt alkalmazná.

Új funkciók a Windows PowerShell ISE-ben

  • Most már szerkesztheted a távoli Windows PowerShell szkripteket és fájlokat egy helyi Windows PowerShell ISE másolatban, ha Enter-PSSession-t futtathatsz egy távoli munkamenet indításához azon a számítógépen, amely tárolja a szerkeszteni kívánt fájlokat, majd a PSEdit <útvonalat és fájlnevet futtatod a távoli számítógépen>. Ez a funkció megkönnyíti a Windows PowerShell fájlok szerkesztését, amelyek a Windows Server Server Core telepítési opcióján tárolódnak, ahol a Windows PowerShell ISE nem fut.
  • A Start-Transcript cmdlet most már támogatott a Windows PowerShell ISE-ben.
  • Most már a távoli szkripteket hibáztatható Windows PowerShell ISE-ben.
  • Egy új menüparancs, a Break All (Ctrl+B), betör a hibakeresőbe mind a helyi, mind a távolról futó szkriptekhez.

Új funkciók a Windows PowerShell Web Services-ben (Management OData IIS Extension)

  • Windows PowerShell 5.0-tól kezdve létrehozhatsz egy Windows PowerShell cmdlet-készletet az adott OData végpont által kinyílt funkciók alapján, ha futtatod az új Microsoft.PowerShell.OdataUtils modulban található Export-ODataEndpointProxy cmdlet-et.

Figyelemre méltó hibajavítások a Windows PowerShell 5.0-ban

  • A Windows PowerShell 5.0 egy új COM implementációt tartalmaz, amely jelentős teljesítményjavulást kínál, amikor COM objektumokkal dolgozol.
  • Jelentős teljesítményjavulást értek el az első tabok befejezésén egy Windows PowerShell ülésben, így a tabok befejezési ideje közel 500 ms-rel rövidebb lett.

Új funkciók a Windows PowerShell 4.0-ban

A Windows PowerShell 4.0 visszafelé kompatibilis. A Windows PowerShell 3.0-hoz és Windows PowerShell 2.0-hoz tervezett parancsnokok, szolgáltatók, modulok, snap-inek, szkriptek, függvények és profilok változtatás nélkül működnek Windows PowerShell 4.0-ban.

A Windows PowerShell 4.0 alapértelmezés szerint telepítve van Windows 8.1-re és Windows Server 2012 R2-re. A Windows PowerShell 4.0 telepítéséhez Windows 7-re SP1-csel, vagy Windows Server 2008 R2-re töltse le és telepítse a Windows Management Framework 4.0-t. Mindenképp olvasd el a letöltési részleteket, és teljesítsd az összes rendszerkövetelményt, mielőtt telepíted a Windows Management Framework 4.0-t.

A Windows PowerShell 4.0 a következő új funkciókat tartalmazza.

Új funkciók a Windows PowerShell-ben

  • A Windows PowerShell Desired State Configuration (DSC) egy új menedzsment rendszer a Windows PowerShell 4.0-ban, amely lehetővé teszi a konfigurációs adatok telepítését és kezelését a szoftverszolgáltatások és azok által futó környezet számára. További információért a DSC-ről lásd: Kezdj el Windows PowerShell Kívánt állapotkonfiguráció.
  • A Save-Help most már lehetővé teszi, hogy elmentsd a segítséget olyan modulokhoz, amelyek távoli számítógépekre vannak telepítve. A Save-Help segítségével letöltheted a Help modult egy internethez csatlakoztatott kliensről (amelyen nem minden olyan modul van telepítve), amelyhez segítséget szeretnél), majd a mentett Segítséget egy távoli megosztott mappába vagy egy olyan számítógépre másolhatod, amelyen nincs internet-hozzáférés.
  • A Windows PowerShell hibakeresőt továbbfejlesztették, hogy lehetővé tegye a Windows PowerShell munkafolyamatai, valamint a távoli számítógépeken futó szkriptek hibakeresését. A Windows PowerShell munkafolyamatokat most már a szkript szintjén lehet hibakeresésre törni a Windows PowerShell parancssorából vagy Windows PowerShell ISE-ből. A Windows PowerShell szkriptek, beleértve a szkriptmunkafolyamatokat is, most már távoli munkameneteken is hibakeresésre lehet történni. A távoli hibakeresési ülések megmaradnak Windows PowerShell távoli üléseken, amelyeket lecsatlakoztatnak, majd később újra csatlakoztatnak.
  • A RunNow paraméter a Register-ScheduledJob és a Set-ScheduledJob esetén kizárja a Trigger paraméterrel történő azonnali kezdési dátumot és időpontot a feladatok számára.
  • Az Invoke-RestMethod és az Invoke-WebRequest most lehetővé teszi, hogy minden fejlécet a Headers paraméterrel állítsd be. Bár ez a paraméter mindig is létezett, ez volt az egyik a webes cmdlet-ek több paramétere közül, amelyek kivételekhez vagy hibákhoz vezettek.
  • A Get-Module új paraméterrel rendelkezik, a FullyQualifiedName, amely a ModuleSpecification[] típusú. A Get-Module FullyQualifiedName paramétere most már lehetővé teszi, hogy a modul nevét, verzióját és opcionálisan a GUID-jét használjuk.
  • A Windows Server 2012 R2 alapértelmezett végrehajtási szabályzata a RemoteSigned. Windows 8.1-en nincs változás az alapértelmezett beállításokban.
  • Windows PowerShell 4.0-tól kezdve a dinamikus metódusnevek használatával támogatott a metódushívás. Egy változót használhatsz egy metódusnév tárolására, majd dinamikusan hívhatod meg a metódust a változó meghívásával.
  • Az aszinkron munkafolyamat feladatokat már nem törlik, ha a PSElapsedTimeoutSec munkafolyamat-standard paramétere által meghatározott időkivonási időszak lejár.
  • Egy új paraméter, a RepeatIndefinitely, került hozzá a New-JobTrigger és Set-JobTrigger cmdletekhez. Ez megszünteti a TimeSpan.MaxValue érték megadásának szükségességét a RepetitionDuration paraméterhez, hogy egy ütemezett feladatot határozatlan ideig ismételten futtasson.
  • Egy Passthru paramétert adtak az Enable-JobTrigger és Disable-JobTrigger cmdlet-ekhez. A Passthru paraméter megjeleníti azokat az objektumokat, amelyeket a parancsod hozott létre vagy módosított.
  • Az Add-Computer és Repoist-Computer cmdletekben a munkacsoport meghatározásához szükséges paraméternevek most már konzisztensek. Mindkét cmdlet most a WorkgroupName paramétert használja.
  • Egy új közös paraméter, a PipelineVariable került hozzá. A PipelineVariable lehetővé teszi, hogy egy vezetékes parancs (vagy annak egy része) eredményeit olyan változóként mentsd el, amely átadható a csővezeték többi részén.
  • A gyűjtemény szűrése metódusszintaxissal már támogatott. Ez azt jelenti, hogy most már egyszerűsített szintaxissal szűrhetsz objektumgyűjteményt, hasonlóan a Where() vagy Where-Object rendszerekhez, metódushívásként formázva. Az alábbiakban egy példa: (Get-Process).ah({$_. Név-match 'powershell'})
  • A Get-Process cmdlet új kapcsolóparaméterrel rendelkezik, az IncludeUserName.
  • Egy új cmdlet, a Get-FileHash, amely több formátumban ad vissza fájl hash-et egy meghatározott fájl számára.
  • Windows PowerShell 4.0-ban, ha egy modul a DefaultCommandPrefix kulcsot használja a manifestjében, vagy ha a felhasználó importál egy modult a Prefix paraméterrel, az ExportedCommands tulajdonsága megjeleníti a modulban lévő parancsokat az előtaggal. Amikor a parancsokat a modul által minősített szintaxissal, a ModuleName\CommandName-vel futtatod, a parancsneveknek tartalmazniuk kell az előtagot.
  • A $PSVersionTable.PSVersion értéke frissítve lett 4.0-ra.
  • Ahol() az operátor viselkedése megváltozott. Collection.Where('property -match name') egy string kifejezés elfogadása ebben a formátumban "Property -CompareOperator Value" már nem támogatott. Azonban a Where() operátor elfogadja a stringkifejezéseket egy scriptblock formátumban; Ez még mindig támogatott.

Új funkciók a Windows PowerShell Integrált Szkriptkörnyezetben (ISE)

  • A Windows PowerShell ISE támogatja mind a Windows PowerShell munkafolyamat-hibakeresést, mind a távoli szkript-hibakeresést.
  • IntelliSense-támogatás lett hozzáadva a Windows PowerShell Desired State Configuration-szolgáltatókhoz és -konfigurációkhoz.

Új funkciók a Windows PowerShell Workflow-ban

  • Támogatás került egy új PipelineVariable közös paraméterre iteratív csővezetékek kontextusában, például a System Center Orchestrator által használt rendszerekben; vagyis olyan pipeline-ok, amelyek egyszerűen balról jobbra futtatják a parancsokat, szemben a közbeosztott streameléssel.
  • A paraméterkötés jelentősen továbbfejlesztett, hogy a fül befejezési helyzeteken kívül is működjön, például olyan parancsokkal, amelyek nem léteznek a jelenlegi futótérben.
  • A Windows PowerShell Workflow-hoz hozzáadták az egyedi konténertevékenységek támogatását. Ha egy tevékenységi paraméter az Activity, Activity[] típusú, vagy egy általános tevékenységgyűjtemény), és a felhasználó egy script blokkot adott argumentumként, akkor a Windows PowerShell Workflow átalakítja a script blokkot XAML-re, ahogy a szokásos Windows PowerShell script-to-workflow fordításnál.
  • Összeomlás után a Windows PowerShell munkafolyamat automatikusan újra csatlakozik a menedzselt csomópontokhoz.
  • Most már a ThrottleLimit tulajdonsággal korlátozhatod a Foreach -Parallel aktivitási utasításokat.
  • A ErrorAction közös paraméternek új érvényes értéke van, a Suspend, amely kizárólag munkafolyamatokra vonatkozik.
  • A munkafolyamat végpontja most automatikusan bezárul, ha nincsenek aktív munkamenetek, nincsenek folyamatban lévő feladatok és nincsenek függőben lévő feladatok. Ez a funkció megőrizi az erőforrásokat azon a számítógépen, amely munkafolyamat-szerverként működik, amikor az automatikus zárási feltételek teljesültek.

Új funkciók a Windows PowerShell Web Services-ben

  • Amikor hiba jelentkezik a Windows PowerShell Web Services (PSWS, más néven Management OData IIS Extension) működés közben, miközben egy cmdlet fut, részletesebb hibaüzenetek érkeznek a hívónak. Ezen felül a hibakódok a Windows Azure REST API hibakód irányelveit követik.
  • Egy végállomás most már meghatározhatja az API verziót, valamint kötelezheti egy adott API verzió használatát. Amikor verzióbeli eltérések fordulnak elő kliens és szerver között, hibák jelennek meg mind a kliensben, mind a szerverben.
  • A diszpécser séma kezelését egyszerűsítették azzal, hogy automatikusan generálnak értékeket a hiányzó mezők számára a sémából. A generálás hasznos kiindulópontként történik, még akkor is, ha a disszpécser séma nem létezik.
  • A PSWS típuskezelése javult arra, hogy olyan típusokat támogassanak, amelyek eltérő konstruktort használnak, mint az alapértelmezett konstruktor, hasonlóan viselkedve a Windows PowerShell PSTypeConverter-éhez . Ez lehetővé teszi, hogy összetett típusokat használj PSWS-szel.
  • A PSWS most már lehetővé teszi egy kapcsolódó példány bővítését lekérdezés közben. Nagyobb bináris tartalmak (például képek, hang vagy videók) esetén az átviteli költség jelentős, és jobb bináris adatokat kódolás nélkül továbbítani. A PSWS elnevezett erőforrásfolyamokat használ kódolás nélküli átvitelhez. A nevelt erőforrás folyam egy Edm.Stream típusú entitás tulajdonsága. Minden elnevezett erőforrás-folyamnak külön URI-je van a GET vagy UPDATE műveletekhez.
  • Az OData műveletek ma már olyan mechanizmust biztosítanak a nem CRUD (Create, Read, Update, and Delete) módszerek meghívására egy erőforráson. Egy műveletet úgy indíthatsz el, hogy HTTP POST kérést küldsz az adott művelethez definiált URI-nek. Az akció paraméterei a POST kérés törzsében vannak meghatározva.
  • A Windows Azure irányelveivel összhangban tartás érdekében minden URL-t egyszerűsíteni kell. A Key As Segment változatában található változás lehetővé teszi, hogy egyes kulcsokat szegmensként ábrázoljanak. Fontos megjegyezni, hogy a több kulcsértéket használó hivatkozások vegörcsel elválasztott értékeket igényelnek zárójelben, ahogy korábban is.
  • A PSWS megjelenése előtt az egyetlen módja a Létrehozás, Frissítés vagy Törlés műveletek végrehajtásának az volt, hogy egy felső szintű erőforráson a Közzététel, Put vagy Delete funkciót hívták elő. Újdonság ebben a PSWS kiadásban, a Zárt Erőforrás műveletek lehetővé teszik a felhasználók számára, hogy ugyanazt az eredményt érjék el, miközben kevésbé közvetlenül érik el ugyanazt az erőforrást, mintha ezek az erőforrások korlátozottak lennének.

Új funkciók a Windows PowerShell Web Access

  • A webalapú Windows PowerShell Web Access konzolon lecsatlakoztathatod és újra csatlakozhatsz meglévő munkamenetekhez. A webes konzolon található Mentés gomb lehetővé teszi, hogy lekapcsolj egy ülést anélkül, hogy törölnéd, majd máskor csatlakozz a játékhoz.
  • Az alapértelmezett paraméterek megjeleníthetők a bejelentkezési oldalon. Az alapértelmezett paraméterek megjelenítéséhez konfiguráld az összes beállítás értékét, amelyek a bejelentkezési oldal Opcionális Kapcsolati Beállítások részén jelennek meg egy web.confignevű fájlban. A web.config fájlt használva minden opcionális kapcsolati beállítást konfigurálhatsz, kivéve egy második vagy alternatív jogosultsági készletet.
  • A Windows Server 2012 R2-ben távolról kezelheted a Windows PowerShell Web Access engedélyezési szabályait. Az Add-PswaAuthorizationRule és a Test-PswaAuthorizationRule parancsnőket most már tartalmaznak egy Credential paramétert, amely lehetővé teszi az adminisztrátorok számára, hogy távoli számítógépről vagy Windows PowerShell Web Access munkamenetből kezeljék az engedélyezési szabályokat.
  • Most már több Windows PowerShell Web Access ülést is lehet egyetlen böngészős ülésen egy új böngészőfüllel minden alkalommal. Már nem kell új böngészős ülést nyitnod ahhoz, hogy csatlakozz egy új üléshez a webalapú Windows PowerShell konzolon.

Jelentős hibajavítások a Windows PowerShell 4.0-ban

  • A Get-Counter most már vissza tud adni olyan számlálókat, amelyek aposztróf karaktert tartalmaznak a Windows francia kiadásaiban.
  • Most már megtekintheted a GetType metódust deserializált objektumokon.
  • #Requires utasítások lehetővé teszik, hogy a felhasználók szükség esetén adminisztrátori hozzáférési jogokat követeljenek.
  • Az Import-CSV cmdlet most már figyelmen kívül hagyja az üres sorokat.
  • Egy olyan problémát, amikor a Windows PowerShell ISE túl sok memóriát használ, amikor egy Invoke-WebRequest parancsot futtatunk, már megoldották.
  • A Get-Module most már a modul verziókat jeleníti meg egy Verzió oszlopban.
  • Remove-Item -Recurse most az almappákból eltávolítja az elemeket, ahogy várható volt.
  • Egy UserName tulajdonságot adtak hozzá a Get-Process kimeneti objektumokhoz.
  • Az Invoke-RestMethod cmdlet most minden elérhető eredményt visszaad.
  • Az add-Member most már hatni kezd a hashtable-okon, még akkor is, ha a hashtable-okat még nem érték el.
  • Select-Object - A kiterjesztés már nem hibásodik vagy nem generál kivételt, ha a tulajdonság értéke nulla vagy üres.
  • A Get-Process most már használható egy csővezetékben más parancsokkal, amelyek az objektumoktól kapják meg a ComputerName tulajdonságot.
  • A ConvertTo-Json és aConvertFrom-Json most már elfogadja a dupla idézőjelben lévő kifejezéseket, és hibaüzenetei már lokalizálhatók.
  • A Get-Job most visszaadja a befejezett ütemezett munkákat, még az új alkalomban is.
  • A Windows PowerShell 4.0-ban a FileSystem szolgáltatóval történő VHD-k csatlakoztatásával és eltávolításával kapcsolatos problémák megoldódtak. A Windows PowerShell most már képes új meghajtókat észlelni, ha azok ugyanabban az ülésben vannak csatlakoztatva.
  • Már nem kell explicit módon betölteni az ScheduledJob vagy Workflow modulokat, hogy az ő munkaköreikkel dolgozz.
  • Teljesítményjavításokat értek el a beágyazott munkafolyamatokat definiáló munkafolyamatok importálásának folyamatában; Ez a folyamat most gyorsabb.

Új funkciók a Windows PowerShell 3.0-ban

A Windows PowerShell 3.0 az alábbi új funkciókat tartalmazza.

Windows PowerShell munkafolyamat

A Windows PowerShell Workflow a Windows Workflow Foundation erejét viszi a Windows PowerShell-hez. Írhatsz munkafolyamatokat XAML-ben vagy Windows PowerShell nyelven, és futtathatod őket, ahogy egy cmdletet futtatnál. A Get-Command cmdlet munkafolyamat-parancsokat kap, a Get-Help cmdlet pedig segítséget a munkafolyamatokhoz.

A munkafolyamatok olyan sorozatok, amelyek hosszú ideig tartóak, ismételhetők, gyakoriak, párhuzamosan használhatók, megszakíthatók, felfüggeszthetők és újraindíthatók. A munkafolyamatokat újraindíthatják szándékos vagy véletlen megszakításból, például hálózati kimaradásból, Windows újraindításból vagy áramszünetből.

A munkafolyamatok hordozhatók is; exportálhatók vagy importálhatók XAML fájlokból. Egyedi munkamenet-konfigurációkat írhatsz, amelyek lehetővé teszik, hogy a munkafolyamatokat vagy tevékenységeket delegált vagy alárendelt felhasználók futtatják.

Az alábbiakban a Windows PowerShell munkafolyamat előnyei találhatók

  • A sorrendű, hosszú távú feladatok automatizálása.
  • Hosszú távú feladatok távoli megfigyelése. A tevékenységek állapota és előrehaladása bármikor látható.
  • Többszámítógépes menedzsment. Egyszerre futtass feladatokat munkamenetként több száz menedzselt csomóponton. A Windows PowerShell Workflow beépített könyvtárat tartalmaz a gyakori menedzsment paraméterekből, például PSComputerName-ből, amelyek lehetővé teszik a több számítógépes menedzsment forgatókönyvet.
  • Összetett folyamatok egyetlen feladatvégrehajtása. Össze lehet vonni kapcsolódó szkripteket, amelyek egy teljes végponttól végpontig helyzetet valósítanak meg egyetlen munkafolyamat során.
  • Kitartás: egy munkafolyamatot a szerzője által meghatározott pontokon mentenek (vagy ellenőrzőpontok állítanak be), így folytathatod a folyamatot az utolsó megtartózott feladatról (vagy ellenőrzőpontról), ahelyett, hogy az elejéről újraindítanád.
  • Erőteljesség. Automatikus hibamentés. A munkafolyamatok túlélik a tervezett és nem tervezett újraindításokat. Felfüggesztheted a munkafolyamat-végrehajtást, majd folytathatod a folyamatot az utolsó kitartó ponttól. A munkafolyamat-szerzők konkrét tevékenységeket jelölhetnek ki újrafuttatásra, ha egy vagy több menedzselt csomóponton meghibásodás történik.
  • Lehetőség a lekapcsolásra, újracsatlakoztatásra és futtatásra megszakított ülésekben. A felhasználók csatlakozhatnak és lecsatlakoztathatnak a munkafolyamat-szervertől, de a munkafolyamat folyamatosan fut. Kijelentkezhetsz a kliens számítógépről vagy újraindíthatod a kliensgépet, és figyelheted a munkafolyamat végrehajtását egy másik számítógépről anélkül, hogy megszakítanád a munkafolyamatot.
  • Ütemezés. A munkafolyamat-feladatok úgy ütemezhetők, mint bármely Windows PowerShell parancsnok vagy szkript.
  • Munkafolyamat és kapcsolat korlátozása. A munkafolyamat végrehajtása és a csomópontokhoz való csatlakozás korlátozható, így lehetővé válik a skálázhatóság és a magas rendelkezésre állás lehetősége.

Windows PowerShell Web hozzáférés

A Windows PowerShell Web Access egy Windows Server 2012 funkció, amely lehetővé teszi a felhasználók számára, hogy Windows PowerShell parancsokat és szkripteket futtassanak egy webalapú konzolon. A webes konzolt használó eszközök nem igényelnek Windows PowerShell-et, távoli menedzsment szoftvert vagy böngészőbővítmény telepítést. Csak egy megfelelően konfigurált Windows PowerShell Web Access átjáróra és egy kliens eszközböngészőre van szükség, amely támogatja a JavaScriptet és fogadja a sütikeket.

További információért lásd: Windows PowerShell Web Access telepítése.

New Windows PowerShell ISE Features

Windows PowerShell 3.0-hoz a Windows PowerShell Integrated Scripting Environment (ISE) számos új funkcióval rendelkezik, beleértve az IntelliSense-et, Show-Command ablakot, egységes konzol panelt, snippeteket, merevítő párosítást, bővítés-összeomlás szakaszokat, automatikus mentést, friss tétellistát, gazdag másolatot, blokkmásolatot, valamint teljes támogatást Windows PowerShell script munkafolyamatok írásához. További információért lásd: about_Windows_PowerShell_ISE.

Támogatás a Microsoft .NET Framework 4 számára

A Windows PowerShell a Common Language Runtime 4.0-ra épül. A parancsnok-, szkript- és munkafolyamat-szerzők használhatják az új Microsoft .NET Framework 4 osztályokat a Windows PowerShell-ben, olyan funkciókkal, amelyek közé tartozik az alkalmazás kompatibilitás és telepítés, a Managed Extensibility Framework, Parallel Computing, Networking, Windows Communication Foundation és Windows Workflow Foundation.

Támogatás Windows előtelepítési környezethez

A Windows PowerShell 3.0 a Windows Preinstallation Environment (Windows PE) 4.0 for Windows 8 opcionális összetevője. A Windows PE egy minimális operációs rendszer, amely elindít egy olyan számítógépet, amelynek nincs operációs rendszere, és előkészíti azt a Windows telepítésére. A Windows PE használható merevlemezek partíciójára és formázására, lemezképek számítógépre másolására, valamint a Windows beállítás elindítására hálózati megosztásból. A Windows PowerShell 3.0 használható Windows PE-n telepítés, diagnosztika és helyreállítási helyzetek kezelésére.

Megszakított ülések

A Windows PowerShell 3.0-tól kezdve a New-PSSession cmdlet-tel létrehozott állandó felhasználói kezelési ülések ("PSSessions") a távoli számítógépen mentődnek el. Már nem függnek attól az üléstől, amelyben létrehozták őket.

Most már le lehet kapcsolni egy ülésről anélkül, hogy megszakítanád a futó parancsokat. Le tudod zárni a játékmenetet és leállítani a számítógépedet. Később újra csatlakozhatsz a szekcióhoz egy másik ülésről ugyanazon vagy egy másik számítógépen.

A cmdlet ComputerName paramétere Get-PSSession most már megkapja az összes felhasználó számítógéphez csatlakozó ülését, még akkor is, ha egy másik ülésen indultak volna el egy másik számítógépen. Csatlakozhatsz a sessionekhez, megkaphatod a parancsok eredményét, új parancsokat indíthatsz, majd leléphetsz a szekcióból.

Új cmdleteket adtak hozzá a Disconnect Sessions funkció támogatására, beleértve Disconnect-PSSession, Connect-PSSession, és Receive-PSSession, valamint új paramétereket adtak a PSSessionokat kezelő cmdletekhez, például a cmdlet InDisconnectedSession paramétere Invoke-Command .

A Disconnect Sessions funkció csak akkor támogatható, ha a kapcsolat kezdő ("kliens") és véglezáró ("szerver") végpontjain lévő számítógépek Windows PowerShell 3.0-t futtatnak.

Robusztus Session Connectivity

A Windows PowerShell 3.0 váratlan kapcsolatvesztéseket észlel a kliens és a szerver között, és megpróbálja automatikusan visszaállítani a kapcsolatot, valamint folytatni a végrehajtást. Ha az ügyfél-szerver kapcsolatot nem lehet a megadott időben újraindítani, a felhasználót értesítik, és a munkamenet megszakad. Az újracsatlakozási kísérlet során a Windows PowerShell folyamatos visszajelzést ad a felhasználónak.

Ha a megszakított ülést az InvokeCommand segítségével indították, a Windows PowerShell létrehoz egy feladatot a megszakított ülés számára, hogy könnyebb legyen újracsatlakozni és folytatni a végrehajtást.

Ezek a funkciók megbízhatóbb és visszaállíthatóbb távirányítási élményt biztosítanak, és lehetővé teszik a felhasználók számára, hogy hosszú ideig tartó feladatokat végezzenek, amelyek robusztus munkameneteket igényelnek, például munkafolyamatokat.

Frissíthető Segítség Rendszer

Most már letöltheted a modulok cmdletjeihez frissített súgófájlokat. A Update-Help cmdlet azonosítja a legújabb súgófájlokat, letölti azokat az internetről, kibontja, validálja, és telepíti őket a modul megfelelő, nyelvspecifikus könyvtárába.

A frissített súgófájlok használatához egyszerűen gépelj Get-Help. Nem kell újraindítanod a Windows-t vagy a Windows PowerShell-t. A $pshome könyvtárban lévő modulok segítségének frissítéséhez indítsd el a Windows PowerShell-t a "Futtatás adminisztrátorként" opcióval.

Az internet-hozzáférés nélküli felhasználókat és a tűzfalak mögött állókat támogatva az új Save-Help cmdlet letölti a segítségfájlokat egy fájlrendszer könyvtárába, például egy fájlmegosztásba. A felhasználók ezután a Update-Help cmdlet-et használhatják, hogy frissített súgófájlokat kapjanak a fájlmegosztásból.

A Update-Help cmdlettel frissítheted a súgófájlokat az összes vagy bizonyos modulhoz minden támogatott UI kultúrában. Még parancsot is tehetsz Update-Help a Windows PowerShell profilodba. Alapértelmezés szerint a Windows PowerShell naponta legfeljebb egyszer tölti le a modul súgófájljait.

A Windows 8 és Windows Server 2012 modulok nem tartalmaznak súgófájlokat. A legfrissebb súgófájlok letöltéséhez írd Update-Helpbe . További információért írd be Get-Help (paraméterek nélkül) vagy lásd a about_Updatable_Help.

Ha a cmdlet súgófájljai nincsenek telepítve a számítógépen, a Get-Help cmdlet most automatikusan generált segítséget jelenít meg. Az automatikusan generált segítség tartalmazza a parancsszintaxist és az utasításokat a Update-Help cmdlet segítségével a súgófájlok letöltéséhez.

Bármely modulszerző támogathatja az Updatable Help szolgáltatást a saját moduljához. Hozzáadhatod a súgófájlokat a modulba, és a Frissíthető Súgóval frissítheted őket, vagy kihagyhatod a súgófájlokat, és a Frissíthető Segítséget használhatod a telepítéshez. További információért a Frissíthető Segítség támogatásáról lásd: Frissíthető segítség támogatása.

Fejlesztett online segítség

A Windows PowerShell online segítség értékes forrás minden felhasználó számára, de különösen fontos azoknak, akik nem telepítik vagy nem telepíthetik a frissített súgófájlokat.

Online segítséghez bármilyen Windows PowerShell cmdlet esetén írd be:

Get-Help <cmdlet-name> -Online

A Windows PowerShell megnyitja a súgó témát az alapértelmezett internetes böngészőben.

A Windows PowerShell 3.0 Get-Help -Online funkciója most még erősebb, mert akkor is működik, ha a parancsnok segítő fájljai nincsenek telepítve a számítógépen. AzGet-Help -Online funkció az online segítség témájának URI-jét a cmdlets és fejlett funkciók HelpUri tulajdonságából kapja.

PS C:\>(Get-Command Get-ScheduledJob).HelpUri
https://go.microsoft.com/fwlink/?LinkID=223923

A Windows PowerShell 3.0-tól kezdve a C# cmdlets szerzői feltölthetik a HelpUri tulajdonságot azzal, hogy létrehoznak egy HelpUri attribútumot a cmdlet osztályon. A fejlett függvények szerzői definiálhatnak egy HelpUri tulajdonságot a CmdletBinding attribútumon. A HelpUri tulajdonság értékének "http" vagy "https" betűvel kell kezdődnie.

Feltehetsz egy HelpUri értéket az XML-alapú cmdlet segédfájl első kapcsolódó linkjébe vagy a . Link irányelv a kommentalapú segítséghez egy funkcióban.

További információért az online segítségnyújtásról lásd: Online segítség támogatása.

CIM integráció

A Windows PowerShell 3.0 támogatja a Common Information Model (CIM) rendszert, amely egységes meghatározásokat ad a rendszerek, hálózatok, alkalmazások és szolgáltatások menedzsment információira, lehetővé téve a menedzsment információk cseréjét heterogén rendszerek között. Támogatás a CIM-hez Windows PowerShell 3.0-ban, beleértve a Windows PowerShell cmdlet-ek létrehozásának lehetőségét új vagy meglévő CIM osztályok alapján, parancsokat a cmdlet definíciójú XML fájlok alapján, valamint a CIM .NET Framework támogatását. API, CIM menedzsment cmdlet-ek és WMI 2.0 szolgáltatók.

Session konfigurációs fájlok

Windows PowerShell 3.0-tól kezdve egyedi munkamenet-konfigurációt tervezhetsz egy fájl segítségével. Az új session konfigurációs fájl lehetővé teszi, hogy meghatározd azokat a munkameneteket, amelyek a szekciókonfigurációt használják, beleértve azt is, hogy mely modulok, szkriptek és formátumfájlok töltődnek be az ülésekbe, mely parancsnokokat és nyelvi elemeket használhatják a felhasználók, mely modulokat és szkripteket futtathatnak, és mely változókat látják.

Tervezhetsz olyan ülést, amelyben a felhasználók csak egyetlen modulból futtathatják a cmdleteket, vagy olyan ülést, amelyben teljes nyelvi hozzáférésük van az összes modulhoz, és hozzáférésük speciális feladatokat végző szkriptekhez.

A Windows PowerShell korábbi verzióiban ezen a szinten csak azok számára volt elérhető, akik C# programot vagy összetett indítási szkriptet. Most már bármely tag a számítógépen lévő Administrators csoport tagjai testreszabhatja a session konfigurációt egy konfigurációs fájl segítségével.

Munkamenet-konfigurációs fájl létrehozásához használja a New-PSSessionConfigurationFile parancsmagot. A session konfigurációs fájl alkalmazásához az ülés konfigurációra használjuk Register-PSSessionConfiguration az or 'Set-PSSessionConfiguration cmdlet-eket.

További információért lásd about_Session_Configuration_Files és New-PSSessionConfigurationFile.

Ütemezett feladatok és feladat-ütemező integráció

Most már a Windows PowerShell háttérfeladatokat ütemezheted és kezelheted őket Windows PowerShellben és Task Schedulerben.

A Windows PowerShell ütemezett feladatok hasznos hibridje a Windows PowerShell háttérfeladatoknak és a feladattervező feladatoknak.

Ahogy a Windows PowerShell háttérmunkájánál, az ütemezett feladatok aszinkron módon futnak a háttérben. A befejezett ütemezett feladatok példányai a feladat-parancsnokokkal kezelhetők, például Start-Job és Get-Job.

A Feladat-ütemező feladatokhoz hasonlóan az ütemezett feladatokat is futtathatod egyszeri vagy ismétlődő ütemezésen, vagy egy akcióra vagy eseményre adott válaszként. Megtekintheted és kezelheted az ütemezett feladatokat a Feladat-ütemezőben, szükség szerint engedélyezheted és letilthatod őket, futtathatod vagy sablonként használhatod, és beállíthatod a feladatok elindulásának feltételeit.

Ezen felül a tervezett feladatokhoz személyre szabott cmdlet-ek is vannak a kezelésükhöz. A parancsnokok lehetővé teszik az ütemezett feladatok létrehozását, szerkesztését, kezelését, kikapcsolását és újraengedélyezését, ütemezett munka triggereket és ütemezett feladatopciók beállítását.

További információért a tervezett munkákról lásd about_Scheduled_Jobs.

Windows PowerShell nyelv fejlesztések

A Windows PowerShell 3.0 számos olyan funkciót tartalmaz, amelyek célja, hogy a nyelv egyszerűbb, könnyebben használható legyen, és elkerüljék a gyakori hibákat. A fejlesztések közé tartozik a tulajdonságok felsorolása, a skaláris objektumok szám- és hossz tulajdonságai, új átirányítási operátorok, az $Using scope-módosító, PSItem automatikus változó, rugalmas szkriptformázás, változók attribútumjai, egyszerűsített attribútumargumentumok, numerikus parancsnevek, a Stop-Parsing operátor, a javított tömb-spittálás, új bitoperátorok, rendezett szótárak, PSCustomObject casting, valamint a továbbfejlesztett kommentalapú segítség.

Új Core Cmdlets

Új cmdleteket adtak hozzá a Windows PowerShell telepítéshez, beleértve cmdleteket az ütemezett feladatok kezelésére, megszakított munkamenetek, CIM integráció és az Frissíthető Súgó Rendszer.

  • CimCmdlets
    • Get-CimAssociatedInstance
    • Get-CimClass
    • Get-CimInstance
    • Get-CimSession
    • Invoke-CimMethod
    • New-CimInstance
    • New-CimSession
    • New-CimSessionOption
    • Register-CimIndicationEvent
    • Remove-CimInstance
    • Remove-CimSession
    • Set-CimInstance
  • Microsoft.PowerShell.Core
    • Connect-PSSession
    • Disconnect-PSSession
    • New-PSSessionConfigurationFile
    • New-PSTransportOption
    • Receive-PSSession
    • Resume-Job
    • Save-Help
    • Suspend-Job
    • Test-PSSessionConfigurationFile
    • Update-Help
  • Microsoft.PowerShell.Diagnostics
    • New-WinEvent
  • Microsoft.PowerShell.Management
    • Get-ControlPanelItem
    • Számítógép átnevezése
    • Show-ControlPanelItem
  • Microsoft.PowerShell.Utility
    • ConvertFrom-Json
    • JSON-konvertálás
    • Get-TypeData
    • Invoke-RestMethod
    • Invoke-WebRequest
    • Remove-TypeData
    • Show-Command
    • Unblock-File
  • PSScheduledJob
    • Add-JobTrigger
    • Disable-JobTrigger
    • Disable-ScheduledJob
    • Enable-JobTrigger
    • Enable-ScheduledJob
    • Get-JobTrigger
    • Get-ScheduledJob
    • Get-ScheduledJobOption
    • New-JobTrigger
    • New-ScheduledJobOption
    • Register-ScheduledJob
    • Set-JobTrigger
    • Set-ScheduledJob
    • Set-ScheduledJobOption
    • Unregister-ScheduledJob
  • PSWorkflow
    • New-PSWorkflowExecutionOption
    • New-PSWorkflowSession
  • PSWorkflowUtility
    • Invoke-AsWorkflow
  • ISE
    • Get-IseSnippet
    • Import-IseSnippet
    • New-IseSnippet

Fejlesztések a meglévő core cmdletekben és szolgáltatókban

A Windows PowerShell 3.0 új funkciókat tartalmaz a meglévő cmdletekhez, beleértve az egyszerűsített szintaxist, valamint új paramétereket a következő cmdletekhez: számítógépes cmdlet-ek, CSV cmdlet-ek, Get-ChildItem, Get-Command, Get-Content, Get-History, Measure-Object, Security cmdlet-ek, Select-Object, Select-String, Split-Path, Start-Process, Tee-Object, Test-Connection, Add-Member és WMI cmdlet-ek.

A Windows PowerShell szolgáltatókat is jelentősen javulták, beleértve a Tanúsítványszolgáltató támogatását a Secure Socket Layer (SSL) tanúsítványok webes hosztinghoz való kezelésére, a hitelesítés, állandó hálózati meghajtók és alternatív adatfolyamok támogatását a fájlrendszer-meghajtókban.

Távoli modul importálás és felfedezés

A Windows PowerShell 3.0 kiterjeszti a modul felfedezését, importálását és implicit távirányítási képességeket távoli számítógépeken. A modul parancsnokságok távoli számítógépeken kapják meg a modulokat, és Windows PowerShell távirányítóval importálják azokat a távoli vagy helyi számítógépre. Az új CIM session-támogatás lehetővé teszi, hogy a CIM és a WMI segítségével kezeld a nem Windows számítógépeket azzal, hogy importálsz parancsokat a helyi számítógépre, amelyek implicit módon futnak a távoli számítógépen.

További információért lásd a és Import-Module cmdlets súgó témáitGet-Module.

Fokozott Tab-kiegészítés

A Windows PowerShell konzol fülkiegészítése most már a parancsnokok, paraméterek, paraméterértékek, felsorolások, .NET keretrendszertípusok, COM objektumok, rejtett könyvtárak és még sok más nevet is betölt. A tabulkiegészítési funkciót teljesen átírták egy új elemző és absztrakt szintaxisfa alapján, hogy több helyzetet is támogatjon, beleértve a memórián belüli parsolásfákat és a középső vonalbeli fül befejezést.

Modul automatikus betöltése

A Get-Command cmdlet most már az összes számítógépen telepített modulból származó cmdlet-et és függvényt kap, még akkor is, ha a modul nem importálva a jelenlegi munkamenetbe.

Amikor megkapod a szükséges cmdletet, azonnal használhatod anélkül, hogy modulokat importálnál. A Windows PowerShell modulokat most már automatikusan importálják, amikor bármelyik parancsnokat használod a modulban. Már nem kell keresned a modult és importálnod ahhoz, hogy használd a cmdletjeit.

A modulok automatikus importálása a parancs parancsával indul el, egy wildcard nélküli cmdlethez futás Get-Command , vagy wildcard nélküli cmdlet futtatása Get-Help .

A $PSModuleAutoLoadingPreference preferencia változóval engedélyezheted, letilthatod és konfigurálhatod a modulok automatikus importálását.

További információért lásd a about_Modules, about_Preference_Variables és a cmdlet-ek Import-Module súgó témáitGet-Command.

Modul tapasztalat fejlesztések

A Windows PowerShell 3.0 fejlett funkciótámogatást hoz a modulokhoz, beleértve az alábbi új funkciókat.

  1. Modulnaplózás egyes modulokhoz (LogPipelineExecutionDetails) és az új "Kapcsold be a modul naplózást" csoportszabályzat beállítása
  2. Kiterjesztett modulobjektumok, amelyek a modul megjelenítője értékeit teszik közzé
  3. Új ExportedCommands tulajdonsága a moduloknak, beleértve a beágyazott modulokat is, amely minden típusú parancsot egyesít
  4. Javított felfedezés a rendelkezésre álló (nem importált) modulokról, beleértve a Path és ListAvailable paraméterek ugyanabban a parancsban történő engedélyezését
  5. Új DefaultCommandPrefix kulcs a modul manifesztein, amely elkerüli a névütközéseket anélkül, hogy modul kódját változtatná.
  6. Javított modulkövetelmények, beleértve a teljesen minősített kötelező modulokat verzióval és GUID-vel, valamint a szükséges modulok automatikus importálását
  7. A cmdlet csendesebb, áramvonalasabb működése New-ModuleManifest .
  8. Új modul paraméter #Requires
  9. Javított Import-Module cmdlet mind a MinimumVersion , mind a RequiredVersion paraméterekkel.

Egyszerűsített parancs felfedezés

Már nem kell minden modult importálnod ahhoz, hogy felfedezd a sessionedhez elérhető parancsokat. Windows PowerShell 3.0-ban a Get-Command cmdlet minden telepített modulból kapja meg az összes parancsot. Ha pedig parancsot használsz, az a modul, amely exportálja a parancsot, automatikusan importálódik a játékmenetedbe.

Az új Show-Command cmdlet kifejezetten kezdőknek van tervezve. Parancsokat kereshetsz egy ablakban. Minden parancsot megtekinthetsz vagy modulonként szűrheted, importálhatsz modult egy gombnyomással, szövegdobozokkal és legördülő listákkal érvényes parancsot készíthetsz, majd lemásolhatod vagy futtathatod a parancsot anélkül, hogy elhagynád az ablakot.

Javított naplózás, diagnosztika és csoportpolitikai támogatás

A Windows PowerShell 3.0 javítja a parancsok és modulok naplózási és követési támogatását a Windows (ETW) naplók eseménykövetésével, a modulok szerkeszthető LogPipelineExecutionDetails tulajdonságával, valamint a "Kapcsold be a modulnaplózást" csoportszabályzat beállításával. Most már a napló adataiból kaphatod meg a paraméterértékeket a napló tulajdonságai megjelenítésével.

Formázás és kimeneti fejlesztések

Az új formázási és kimeneti fejlesztések javítják minden Windows PowerShell felhasználó hatékonyságát. A fejlesztések közé tartozik a kimeneti átirányítás minden folyamhoz, egy továbbfejlesztett Update-Type cmdlet, amely dinamikusan ad hozzá típusokat Format.ps1xml fájlok nélkül, a kimeneti szócsomagolást, az egyedi objektumok alapértelmezett formázási tulajdonságait, a PSCustomObject típust, a WMI objektumok és heterogén objektumok jobb formázását, valamint a metódustúlterhelések felderítését támogatva.

Fejlesztett konzol hoszte-élmény

A Windows PowerShell konzol hoszteprogramja új funkciókat kínál a Windows PowerShell 3.0-ban, beleértve alapértelmezett egyszálas lakást. Az új "Futtatás PowerShell-lel" opció a Fájlkezelőben lehetővé teszi, hogy a szkripteket korlátlan ülésen futtasd be pusztán jobb kattintással. Az új konzol host indítási logikája gyorsabban indítja el a Windows PowerShellt, és az új betűtípusok lehetővé teszik, hogy személyre szabd a megszokott konzolablak élményt.

Új Cmdlet és Hosting API-k

Az új Cmdlet API és Hosting API tartalmaz nyilvános fejlett szintaxisfa (AST) API-kat, valamint pipeline page-ezéshez, beágyazott pipeline-ekhez, runspace poolok fülkiegészítéséhez, Windows RT-hez, az elavult cmdlet attribútumhoz, valamint a FunctionInfo objektum Verb és Noun tulajdonságaihoz.

Teljesítménybeli fejlesztések

Jelentős teljesítményjavulást a Windows PowerShellben az új nyelvi elemző, amely a .NET Framework 4 Dynamic Runtime Language-re (DLR) épül, valamint a futási idejű szkript-fordítás, a motor megbízhatóságának javításai és az algoritmus Get-ChildItem módosításai, amelyek javítják a teljesítményt, különösen hálózati megosztások keresésekor.

RunAs és megosztott host támogatás

A Windows PowerShell 3.0 támogatja a RunAs és a Shared Host funkciókat.

A Windows PowerShell Workflow-hoz tervezett RunAs funkció lehetővé teszi a munkamenet konfigurációs felhasználók számára, amelyek egy megosztott felhasználói fiók engedélyével futnak. Ez lehetővé teszi, hogy kevésbé jogosult felhasználók bizonyos parancsokat és szkripteket futtassanak az adminisztrátori joggal, és csökkenti a kevésbé tapasztalt felhasználók hozzáadásának szükségességét az Adosztrátorok csoportjába.

A SharedHost funkció lehetővé teszi, hogy több felhasználó több számítógépen egyszerre csatlakozzon egy munkafolyamat üléshez, és nyomon kövesse a munkafolyamat előrehaladását. A felhasználók elindíthatnak egy munkafolyamatot egy számítógépen, majd csatlakozhatnak a munkafolyamathoz egy másik számítógépen anélkül, hogy a munkafolyamatot az eredeti számítógépről lecsatlakoztatnák. A felhasználóknak ugyanazokkal a jogosultságokkal kell rendelkezniük, és ugyanazt a munkamenet-konfigurációt kell használniuk. További információért lásd: "Windows PowerShell munkafolyamat futtatása" című részben a Windows PowerShell munkafolyamatának kezdete.

Speciális karakterkezelési fejlesztések

A Windows PowerShell 3.0 speciális karakterek értelmezésének és helyes kezelésének javítása érdekében a LiteralPath paraméter, amely speciális karaktereket kezel az utakon, szinte minden Path paraméterrel rendelkező cmdletre érvényes, beleértve az új Update-Help és Save-Help a cmdleteket is. A parser speciális logikát is tartalmaz, hogy javítsa a backtick karakter (`) és a négyzetzárójelek kezelését a fájlnevekben és útvonalakban.

Lásd még: