A Windows PowerShell 5.0 újdonságai

Windows PowerShell 5.0 jelentős új funkciókat tartalmaz, amelyek kibővítik a használatát, javítják a használhatóságot, és lehetővé teszik a Windows-alapú környezetek egyszerűbb és átfogóbb kezelését.

Windows PowerShell 5.0 visszamenőlegesen kompatibilis. A Windows PowerShell 4.0-s, Windows PowerShell 3.0-s és Windows PowerShell 2.0-s verzióhoz tervezett parancsmagok, szolgáltatók, modulok, beépülő modulok, szkriptek, függvények és profilok általában módosítások nélkül működnek Windows PowerShell 5.0-s verzióban.

A Windows PowerShell telepítése

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

Ha Windows PowerShell 5.0-t szeretne telepíteni Windows Server 2012 R2-re, Windows 8.1 Enterprise vagy Windows 8.1 Pro, töltse le és telepítse az Windows Management Framework 5.0-t. A Windows Management Framework 5.0 telepítése előtt mindenképpen olvassa el a letöltés részleteit, és feleljen meg az összes rendszerkövetelményeknek.

A témakör tartalma

Windows PowerShell 4.0-s frissítések a 2014. novemberi kumulatív frissítésben (KB 3000850)

A Windows PowerShell 4.0 Windows PowerShell Desired State Configuration (DSC) számos frissítése és fejlesztése elérhető a 2014. novemberi kumulatív frissítésben a Windows RT 8.1,Windows 8.1 és Windows Server 2012 R2 (KB3000850). A Windows PowerShell futtatásával Get-Hotfix -Id KB3000850 megállapíthatja, hogy KB3000850 telepítve van-e a rendszerre.

  • Frissítések meglévő parancsmagokra a PSDesiredStateConfiguration modulban

  • Új parancsmagok a PSDesiredStateConfiguration modulban

  • Nyelvi fejlesztések

    • A DependsOn mostantól támogatja az összetett erőforrásokat.
    • A DependsOn mostantól támogatja az erőforráspéldányok neveiben szereplő számokat.
    • Az üresnek értékelt csomópontkifejezések már nem jeleznek hibát.
    • Kijavítottunk egy hibát, amely akkor fordul elő, ha egy csomópontkifejezés üresnek értékel.
    • A konfigurációkat hívó konfigurációk mostantól működnek a Windows PowerShell konzolon.
  • Lekéréses mód fejlesztései

    • A lekéréses mód mostantól az összes ZIP-fájlt támogatja.
    • Az AllowModuleOverwrite mostantól megfelelően működik.
  • Rugalmassági fejlesztések

    • A New DebugMode lehetővé teszi az erőforrásmodulok újratöltését.
    • Konfigurációs hiba esetén a pending.mof fájl nem törlődik.
    • A Helyi Configuration Manager (LCM) mostantól rugalmasabb, ha a metakonfigurálási beállítások sérültek.
  • Diagnosztikai fejlesztések

    • Figyelmeztetés jelenik meg, ha az LCM a megadott beállításoktól eltérőre állítja az időzítőt.
    • A hibanapló-fájlok mostantól tartalmazzák Windows PowerShell erőforrások hívási vermét.
  • Rugalmassági fejlesztések

    • A LocalConfigurationManager erőforráshoz tartozik egy új actionAfterReboot tulajdonság.
      • ContinueConfiguration (alapértelmezett érték): A célcsomópont újraindítása után automatikusan folytatja a konfigurációt.
      • StopConfiguration: A csomópont újraindítása után ne folytassa automatikusan a konfigurációt.
    • A konzisztenciafuttatás most már gyakrabban fordulhat elő, mint egy PULL művelet, vagy fordítva.
    • Verziószámozás támogatása: A DSC mostantól képes felismerni egy újabb ügyfélen létrehozott dokumentumot (amely a WMF 5.0 részét képezi).
  • Hibamegelőzési fejlesztések

    • A modulverziót a rendszer a konfiguráció alkalmazása előtt kényszeríti ki.
    • A hibakeresésipreferencia mostantól helyesen van beállítva get-, set-vagy Test-TargetResource hívásokhoz.
  • A hitelesítő adatok kezelésének fejlesztései

    • A rendszer most már használ tanúsítványt, ha a Tanúsítvány és a PSDscAllowPlainTextPassword is meg van adva.
    • A hitelesítő adatok visszafejtése még a Get-TargetResource esetében is.
    • A metakonfigurálási hitelesítő adatok titkosítottak és visszafejthetők.
    • A PS-hitelesítő adatok mostantól visszafejthetők, ha beágyazott objektumban vannak.
  • Beépített erőforrás-fejlesztések

    • A Csomag erőforrás
      • A továbbiakban nem a megfelelő csomagot telepíti (helyi vagy webes forrásokból).
      • Most már támogatja a HTTPS-t.
    • A Csomag erőforrás mostantól támogatja a HTTPS-t.
    • Az archív erőforrás mostantól támogatja a hitelesítő adatokat.

Az Windows PowerShell 5.0 új funkciói

Új funkciók a Windows PowerShell

  • Az Windows PowerShell 5.0-tól kezdődően a többi objektumorientált programozási nyelvhez hasonló osztályokkal, formális szintaxissal és szemantikával fejleszthet. Az osztály, az enum és más kulcsszavak hozzá lettek adva a Windows PowerShell nyelvhez az új funkció támogatásához. Az osztályok használatával kapcsolatos további információkért lásd: about_Classes.

  • Windows PowerShell 5.0 egy új, strukturált információs adatfolyamot vezet be, amellyel strukturált adatokat továbbíthat a szkriptek és hívói (vagy üzemeltetési környezete) között. Mostantól a Write-Host használatával kimenetet bocsáthat ki az információs adatfolyamnak. Az információs adatfolyamok a PowerShell.Streamekhez, a feladatokhoz, az ütemezett feladatokhoz és a munkafolyamatokhoz is működnek. Az alábbi funkciók támogatják az információs adatfolyamot.

    • Egy új Write-Information parancsmag, amellyel megadhatja, hogy Windows PowerShell hogyan kezelje a parancsok adatfolyamadatait. Write-Host a Write-Information burkolója. Write-Information szintén támogatott munkafolyamat-tevékenység.
    • Két új gyakori paraméter, az InformationVariable és az InformationAction segítségével meghatározhatja, hogyan jelennek meg a parancsokból származó információstreamek. Az InformationAction érvényes értékei: SilentlyContinue, Stop, Continue, Inquire, Ignore vagy Suspend, a SilentlyContinue az alapértelmezett érték. Az InformationVariable egy sztringet ad meg annak a változónak a neveként, amelyhez menteni szeretné a parancsból Write-Host adatokat.
    • Egy új, InformationPreference nevű beállításváltozó határozza meg az adatfolyam-adatok alapértelmezett beállítását egy Windows PowerShell munkamenetben. Az alapértelmezett érték a SilentlyContinue.
    • Két új gyakori munkafolyamat-paraméter, a PSInformation és az InformationAction lett hozzáadva.
    • A Format-Table parancs használatakor a rendszer mostantól automatikusan formázza a táblaoszlopokat az adatfolyamon áthaladó első 300ms adat kiértékelésével.
  • A Microsoft Research szolgáltatással együttműködve új parancsmag, a ConvertFrom-String lett hozzáadva. ConvertFrom-String lehetővé teszi strukturált objektumok kinyerását és elemzését a szöveges sztringek tartalmából. További információ: ConvertFrom-String.

  • Az új Convert-String parancsmag automatikusan formáz szövegeket egy -Example paraméterben megadott példa alapján.

  • A Microsoft.PowerShell.Archive nevű új modul parancsmagokkal tömöríti a fájlokat és mappákat archív (más néven ZIP-) fájlokba, kinyeri a fájlokat a meglévő ZIP-fájlokból, és frissíti a ZIP-fájlokat a bennük tömörített fájlok újabb verzióival.

  • A PackageManagement nevű új modul lehetővé teszi szoftvercsomagok felderítését és telepítését az interneten. A PackageManagement (korábbi nevén OneGet) modul a meglévő csomagkezelők (más néven csomagszolgáltatók) egy kezelője vagy multiplexerje, amely egységesíti a Windows-csomagkezelést egyetlen Windows PowerShell felülettel.

  • A PowerShellGet új moduljával megkeresheti, telepítheti, közzéteheti és frissítheti a modulokat és A DSC-erőforrásokat a PowerShell-galéria vagy egy belső modultárban, amelyet a Register-PSRepository parancsmag futtatásával állíthat be.

  • Hozzá lett adva egy új, Rejtett nyelvi kulcsszó, amely azt adja meg, hogy egy tag (tulajdonság vagy metódus) alapértelmezés szerint nem jelenik meg Get-Member eredményekben (kivéve, ha hozzáadja a -Force paramétert). A rejtettként megjelölt tulajdonságok és metódusok szintén nem jelennek meg az IntelliSense eredményei között, kivéve, ha olyan környezetben van, ahol a tagnak láthatónak kell lennie; Például az automatikus változónak $This rejtett tagokat kell megjelenítenie az osztálymetódusban.

  • Az Új elem, az Elem eltávolítása és a Get-ChildItem továbbfejlesztettük a szimbolikus hivatkozások létrehozásának és kezelésének támogatásához. A New-Item -ItemType paramétere elfogad egy új értéket, a SymbolicLinket. Mostantól egyetlen sorban hozhat létre szimbolikus hivatkozásokat a New-Item parancsmag futtatásával.

  • Get-ChildItem rendelkezik egy új -Depth paraméterrel is, amelyet a -Recurse paraméterrel használ a rekurzió korlátozásához. A -Recurse -Depth 2 Get-ChildItem például az aktuális mappából, az aktuális mappában lévő összes gyermekmappából és a gyermekmappákban lévő összes mappából származó eredményeket adja vissza.

  • Copy-Item mostantól fájlokat vagy mappákat másolhat az egyik Windows PowerShell munkamenetből egy másikba, ami azt jelenti, hogy fájlokat másolhat távoli számítógépekhez csatlakoztatott munkamenetekbe (beleértve a Nano Servert futtató számítógépeket is, és így nincs más felülete). Fájlok másolásához adja meg a PSSession azonosítókat az új -FromSession és -ToSession paraméterek értékeként, majd adja hozzá az -Path és -Destination értéket a forrás és a cél megadásához. Például Copy-Item -Path c:\myFile.txt -ToSession $s -Destination d:\destinationFolder.

  • Windows PowerShell átírást továbbfejlesztettük, hogy a konzol gazdagépén (powershell.exe) kívül minden üzemeltetési alkalmazásra (például Windows PowerShell ISE) vonatkozzanak. Az átírási beállítások (beleértve a rendszerszintű átirat engedélyezését) konfigurálhatók a PowerShell-átírás bekapcsolása Csoportházirend beállítás engedélyezésével, amely a Felügyeleti sablonok/Windows-összetevők/Windows PowerShell című témakörben található.

  • Az új részletes szkriptkövetési funkció lehetővé teszi Windows PowerShell szkriptek rendszerbeli használatának részletes nyomon követését és elemzését. Miután engedélyezte a részletes szkriptkövetést, Windows PowerShell naplózza az összes szkriptblokkot a Windows eseménykövetési (ETW) eseménynaplójába, a Microsoft-Windows-PowerShell/Operational eseménynaplóba.

  • Az 5.0-s Windows PowerShell-tól kezdődően az új titkosítási üzenetszintaxis parancsmagok támogatják a tartalom titkosítását és visszafejtését az IETF szabványos formátumának használatával, a RFC5652 által dokumentált titkosítási védelem érdekében. A Get-CmsMessage, a Protect-CmsMessage és a Unprotect-CmsMessage parancsmagok hozzá lettek adva a Microsoft.PowerShell.Security modulhoz.

  • A Microsoft.PowerShell.Utility modul, a Get-Runspace, a Debug-Runspace, a Get-RunspaceDebug, az Enable-RunspaceDebug és a Disable-RunspaceDebug új parancsmagjai lehetővé teszik a hibakeresési beállítások beállítását egy runspace-en, és elindíthatja és leállíthatja a hibakeresést egy runspace-en. Tetszőleges futtatóterek (azaz olyan futtatóterek hibakereséséhez, amelyek nem az alapértelmezett futtatókörnyezetek egy Windows PowerShell konzolon vagy Windows PowerShell ISE-munkamenetben) Windows PowerShell lehetővé teszi, hogy töréspontokat állítson be egy szkriptben, és a hozzáadott töréspontok leállítják a szkript futását, amíg hozzá nem csatolhat egy hibakeresőt a runspace-szkript hibakereséséhez. Az tetszőleges futtatóterek beágyazott hibakeresési támogatása hozzá lett adva a Windows PowerShell szkript hibakeresőjéhez a runspaces esetében.

  • Új Format-Hex parancsmag lett hozzáadva a Microsoft.PowerShell.Utility modulhoz. Format-Hex lehetővé teszi a szöveges vagy bináris adatok hexadecimális formátumban való megtekintését.

  • Get-Clipboard és Set-Clipboard parancsmagok lettek hozzáadva a Microsoft.PowerShell.Utility modulhoz; megkönnyítik a tartalom átvitelét egy Windows PowerShell munkamenetbe és onnan. A vágólap parancsmagjai képeket, hangfájlokat, fájllistákat és szöveget támogatnak.

  • A Microsoft.PowerShell.Management modulhoz új parancsmag, a Clear-RecycleBin lett hozzáadva; ez a parancsmag kiüríti a Lomtárat egy rögzített meghajtóhoz, amely külső meghajtókat is tartalmaz. A rendszer alapértelmezés szerint egy Clear-RecycleBin parancs megerősítését kéri, mert a parancsmag ConfirmImpact tulajdonsága ConfirmImpact.High értékre van állítva.

  • Egy új parancsmag, a New-TemporaryFile lehetővé teszi egy ideiglenes fájl létrehozását a szkriptelés részeként. Alapértelmezés szerint az új ideiglenes fájl a következőben C:\Users\<user name>\AppData\Local\Tempjön létre: .

  • A Fájlkivétel, a Bővítménytartalom és a Set-Content parancsmagok mostantól új -NoNewline paraméterrel rendelkeznek, amely kihagy egy új sort a kimenet után.

  • A New-Guid parancsmag a .NET-keretrendszer Guid osztályt használja guid azonosító létrehozásához, amely szkriptek vagy DSC-erőforrások írásakor hasznos.

  • Mivel a fájlverzióval kapcsolatos információk félrevezetőek lehetnek, különösen egy fájl javítása után, új FileVersionRaw és ProductVersionRaw szkripttulajdonságok érhetők el a FileInfo-objektumokhoz. A következő parancs futtatásával például megjelenítheti a powershell.exe ezen tulajdonságainak értékeit, ahol $pid tartalmazza a Windows PowerShell futó munkamenetének folyamatazonosítóját:Get-Process -Id $pid -FileVersionInfo | Format-List *version* -Force

  • Az új parancsmagok Enter-PSHostProcess és Exit-PSHostProcess lehetővé teszik Windows PowerShell szkriptek hibakeresését a Windows PowerShell konzolon futó jelenlegi folyamattól eltérő folyamatokban. Futtassa a Enter-PSHostProcess egy adott folyamatazonosító megadásához vagy az ahhoz való csatoláshoz, majd futtassa Get-Runspace a folyamat aktív futtatótereinek visszaadásához. Futtassa a Exit-PSHostProcess a folyamatból való leválasztáshoz, ha befejezte a szkript hibakeresését a folyamaton belül.

  • Új Wait-Debugger parancsmag lett hozzáadva a Microsoft.PowerShell.Utility modulhoz. A Wait-Debugger futtatásával leállíthat egy szkriptet a hibakeresőben, mielőtt futtatja a következő utasítást a szkriptben.

  • A Windows PowerShell munkafolyamat-hibakereső mostantól támogatja a parancs- vagy lapkiegészítést, és a beágyazott munkafolyamat-függvényeket is hibakeresésre használhatja. A Ctrl+Break billentyűkombinációt lenyomva beírhatja a hibakeresőt egy futó szkriptbe, a helyi és a távoli munkamenetekbe, valamint egy munkafolyamat-szkriptbe.

  • A Microsoft.PowerShell.Core modulhoz Debug-Job-parancsmag hozzáadva a Windows PowerShell munkafolyamathoz, háttérhez és távoli munkamenetekben futó feladatokhoz tartozó feladatszkriptek hibakereséséhez.

  • Új atBreakpoint-állapot lett hozzáadva Windows PowerShell feladatokhoz. Az AtBreakpoint állapota akkor érvényes, ha egy feladat beállított töréspontokat tartalmazó szkriptet futtat, és a szkript töréspontot ért el. Ha egy feladat leáll egy hibakeresési töréspontnál, a Debug-Job parancsmag futtatásával kell hibakeresést végeznie a feladatban.

  • Windows PowerShell 5.0 egyetlen Windows PowerShell modul több verziójának támogatását valósítja meg az $PSModulePath ugyanabban a mappában. A ModuleSpecification osztályhoz hozzáadtunk egy RequiredVersion tulajdonságot, amely segít a modul kívánt verziójának beszerzésében; ez a tulajdonság kölcsönösen kizárja a ModuleVersion tulajdonságot. A RequiredVersion mostantól támogatott a Get-Module, az Import-Module és a Remove-Module parancsmagok FullyQualifiedName paraméterének értékeként.

  • Most már elvégezheti a modulverzió-ellenőrzést a Test-ModuleManifest parancsmag futtatásával.

  • A Get-Command parancsmag eredményei mostantól egy Verzió oszlopot jelenítenek meg; új Version tulajdonság lett hozzáadva a CommandInfo osztályhoz. Get-Command ugyanazon modul több verziójából származó parancsokat jelenít meg. A Version tulajdonság a CmdletInfo: CmdletInfo és ApplicationInfo származtatott osztályainak is része.

  • Get-Command rendelkezik egy új -ShowCommandInfo paraméterrel, amely a ShowCommand adatokat PSObjects néven adja vissza. Ez különösen akkor hasznos, ha Show-Command Windows PowerShell ISE-ben fut Windows PowerShell újraegyenlítéssel. A -ShowCommandInfo paraméter lecseréli a Microsoft.PowerShell.Utility modul meglévő Get-SerializedCommand függvényét, de a Get-SerializedCommand szkript továbbra is elérhető az alsó szintű szkriptek támogatásához.

  • Az új Get-ItemPropertyValue parancsmaggal pont jelölés nélkül szerezheti be egy tulajdonság értékét. A Windows PowerShell régebbi kiadásaiban például a következő parancs futtatásával lekérheti a PowerShellEngine beállításkulcs Application Base tulajdonságának értékét: (Get-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\PowerShell\3\PowerShellEngine -Name ApplicationBase). ApplicationBase. Az Windows PowerShell 5.0-s verziótól kezdve futtathatja a Get-ItemPropertyValue -Path HKLM:\SOFTWARE\Microsoft\PowerShell\3\PowerShellEngine -Name ApplicationBase parancsot.

  • A Windows PowerShell konzol mostantól szintaxisszínezést használ, ugyanúgy, mint Windows PowerShell ISE-ben.

  • Az új NetworkSwitch modul olyan parancsmagokat tartalmaz, amelyek lehetővé teszik a kapcsoló, a virtuális LAN (VLAN) és az alapszintű 2. rétegbeli hálózati kapcsoló portkonfigurációjának alkalmazását Windows Server 2012 R2 embléma-tanúsítvánnyal rendelkező hálózati kapcsolókra.

  • A FullyQualifiedName paraméter hozzá lett adva Import-Module és Remove-Module parancsmagokhoz, hogy támogassa egyetlen modul több verziójának tárolását.

  • A Save-Help, az Update-Help, az Import-PSSession, az Export-PSSession és a Get-Command új, ModuleSpecification típusú, Teljesen minősítettModule paraméterrel rendelkezik. Adja hozzá ezt a paramétert egy modul teljes neve alapján történő megadásához.

  • A $PSVersionTable.PSVersion értéke 5.0-ra frissült.

  • A WMF 5.0 (PowerShell 5.0) tartalmazza a Pester modult. A Pester a PowerShell egységtesztelési keretrendszere. Biztosít néhány egyszerűen használható kulcsszót, amelyekkel teszteket hozhat létre a szkriptekhez.

A Windows PowerShell Desired State Configuration új funkciói

  • Windows PowerShell nyelvi fejlesztésekkel osztályokkal definiálhat Windows PowerShell Desired State Configuration (DSC) erőforrásokat. Import-DscResource mostantól valódi dinamikus kulcsszó; Windows PowerShell elemzi a megadott modul gyökérmodulját, és megkeresi azokat az osztályokat, amelyek tartalmazzák a DscResource attribútumot. Mostantól osztályokkal definiálhat DSC-erőforrásokat, amelyekben nincs szükség sem MOF-fájlra, sem a modulmappában található DSCResource almappára. Egy Windows PowerShell modulfájl több DSC-erőforrásosztályt is tartalmazhat.
  • A PSDesiredStateConfiguration modulban egy új paraméter, a ThrottleLimit lett hozzáadva a következő parancsmagokhoz. Adja hozzá a ThrottleLimit paramétert azon célszámítógépek vagy eszközök számának megadásához, amelyeken a parancsot egyszerre szeretné használni.
    • Get-DscConfiguration
    • Get-DscConfigurationStatus
    • Get-DscLocalConfigurationManager
    • Restore-DscConfiguration
    • Test-DscConfiguration
    • Compare-DscConfiguration
    • Publish-DscConfiguration
    • Set-DscLocalConfigurationManager
    • Start-DscConfiguration
    • Update-DscConfiguration
  • Központosított DSC-hibajelentéssel a rendszer nem csak az eseménynaplóban naplózza a részletes hibaadatokat, hanem egy központi helyre is elküldheti későbbi elemzés céljából. Ezzel a központi helyen tárolhatja a környezetében lévő bármely kiszolgálónál előforduló DSC-konfigurációs hibákat. Miután a jelentéskészítő kiszolgáló definiálva van a metakonfigurációban, a rendszer az összes hibát elküldi a jelentéskészítő kiszolgálónak, majd egy adatbázisban tárolja. Ezt a funkciót attól függetlenül beállíthatja, hogy egy célcsomópont konfigurálva van-e a konfigurációk lekérésére egy lekérési kiszolgálóról.
  • Az ISE Windows PowerShell megkönnyíti a DSC-erőforrások szerkesztését. Most már megteheti az alábbiakat.
    • A konfiguráción vagy csomópontblokkon belüli összes DSC-erőforrás listázásához írja be a Ctrl+Szóköz billentyűkombinációt egy üres sorba a blokkon belül.
    • Automatikus kiegészítés az enumerálási típus erőforrás-tulajdonságain.
    • A DSC-erőforrások DependsOn tulajdonságának automatikus befejezése a konfiguráció többi erőforráspéldánya alapján.
    • Továbbfejlesztett lapkiegészítés az erőforrás-tulajdonságértékek esetében.
  • A felhasználó mostantól futtathat egy erőforrást egy megadott hitelesítőadat-készlet alatt úgy, hogy hozzáadja a PSDscRunAsCredential attribútumot egy Csomópontblokkhoz. Például: PSDscRunAsCredential = Get-Credential Contoso\DscUser. Ez a funkció hasznos a Windows Installert és végrehajtható telepítőket futtató konfigurációk létrehozásához, a felhasználónkénti beállításjegyzékhez való hozzáféréshez vagy az aktuális felhasználói környezeten kívüli egyéb feladatok végrehajtásához.
  • A Konfiguráció kulcsszóhoz 32 bites (x86-alapú) támogatás lett hozzáadva.
  • Windows PowerShell mostantól támogatja a DSC-konfigurációk egyéni súgóját, amelyet a [CmdletBinding()] hozzáadása a létrehozott konfigurációs függvényhez határoz meg.
  • Egy új DscLocalConfigurationManager attribútum egy konfigurációs blokkot jelöl metakonfigurációként, amely a DSC helyi Configuration Manager konfigurálására szolgál. Ez az attribútum arra korlátozza a konfigurációt, hogy csak olyan elemeket tartalmazzon, amelyek a DSC helyi Configuration Manager konfigurálják. A feldolgozás során ez a konfiguráció létrehoz egy *.meta.mof fájlt, amelyet a rendszer a megfelelő célcsomópontokra küld a Set-DscLocalConfigurationManager parancsmag futtatásával.
  • A részleges konfigurációk mostantól engedélyezve vannak az Windows PowerShell 5.0-s verzióban. A konfigurációs dokumentumokat töredékekben lévő csomópontokra is kézbesítheti. Ahhoz, hogy egy csomópont több részletet kapjon egy konfigurációs dokumentumból, a csomópont Helyi Configuration Manager először be kell állítani a várt töredékek megadásához
  • A számítógépközi szinkronizálás a DSC Windows PowerShell 5.0-s verzióban új. A beépített WaitFor* erőforrások (WaitForAll, WaitForAny és WaitForSome) használatával mostantól külső vezénylések nélkül is megadhatja a számítógépek közötti függőségeket a konfigurációs futtatások során. Ezek az erőforrások csomópontok közötti szinkronizálást biztosítanak CIM-kapcsolatok használatával a WS-Man protokollon keresztül. A konfiguráció megvárhatja, amíg egy másik számítógép adott erőforrás-állapota megváltozik.
  • A Just Enough Administration (JEA) egy új delegálási biztonsági funkció, amely a DSC-t és Windows PowerShell korlátozott futtatókörnyezeteket használja a vállalatok biztonságának megőrzéséhez az alkalmazottak adatvesztése vagy biztonsága ellen, akár szándékos, akár nem szándékos. A JEA-ról, beleértve az xJEA DSC-erőforrás letöltésének helyét is, a Just Enough Administration (Elegendő felügyelet) című témakörben talál további információt.
  • A következő új parancsmagok lettek hozzáadva a PSDesiredStateConfiguration modulhoz.
    • Egy új Get-DscConfigurationStatus parancsmag magas szintű információkat kap a célcsomópont konfigurációs állapotáról. Az utolsó vagy az összes konfiguráció állapotát lekértheti.
    • Az új Compare-DscConfiguration parancsmag egy megadott konfigurációt hasonlít össze egy vagy több célcsomópont tényleges állapotával.
    • Egy új Publish-DscConfiguration parancsmag egy konfigurációs MOF-fájlt másol egy célcsomópontra, de nem alkalmazza a konfigurációt. A konfiguráció a következő konzisztencia-átadás során vagy a Update-DscConfiguration parancsmag futtatásakor lesz alkalmazva.
    • Az új Test-DscConfiguration parancsmaggal ellenőrizheti, hogy az eredményül kapott konfiguráció megfelel-e a kívánt konfigurációnak, és true (Igaz) értéket ad vissza, ha a konfiguráció megfelel a kívánt konfigurációnak, vagy Hamis értéket, ha a tényleges konfiguráció nem felel meg a kívánt konfigurációnak.
    • Egy új Update-DscConfiguration parancsmag egy konfiguráció feldolgozását kényszeríti. Ha a Helyi Configuration Manager lekéréses módban van, a parancsmag az alkalmazás előtt lekéri a konfigurációt a lekérési kiszolgálóról.

Az ISE Windows PowerShell új funkciói

  • Mostantól szerkesztheti a távoli Windows PowerShell szkripteket és fájlokat az Windows PowerShell ISE helyi példányában, ha a Enter-PSSession futtatásával elindít egy távoli munkamenetet a szerkeszteni kívánt fájlokat tároló számítógépen, majd futtatja a PSEdit <elérési útját és fájlnevét a távoli számítógépen>. Ez a funkció megkönnyíti a Windows Server Server Core telepítési lehetőségében tárolt Windows PowerShell fájlok szerkesztését, ahol Windows PowerShell ISE nem futtatható.
  • A Start-Transcript parancsmag mostantól támogatott Windows PowerShell ISE-ben.
  • Mostantól hibakeresést végezhet a távoli szkriptek között Windows PowerShell ISE-ben.
  • Egy új menüparancs, a Break All (Ctrl+B) betörik a hibakeresőbe a helyi és a távolról futó szkriptek esetében is.

Új funkciók a Windows PowerShell Web Servicesben (Felügyeleti OData IIS-bővítmény)

  • Az 5.0-s Windows PowerShell-től kezdve Windows PowerShell parancsmagokat hozhat létre az adott OData-végpont által közzétett funkciók alapján, az új Microsoft.PowerShell.OdataUtils modulban található Export-ODataEndpointProxy parancsmag futtatásával.

Jelentős hibajavítások az Windows PowerShell 5.0-s verzióban

  • Windows PowerShell 5.0 tartalmaz egy új COM-implementációt, amely jelentős teljesítménybeli javulást kínál a COM-objektumok használatakor.
  • Jelentős teljesítménybeli fejlesztések történtek egy Windows PowerShell munkamenet első lapjának befejezéséhez, ami közel 500 ms-tal lerövidítette a tabulátor befejezési idejét.

A Windows PowerShell 4.0 új funkciói

Windows PowerShell 4.0 visszamenőlegesen kompatibilis. A Windows PowerShell 3.0-s és Windows PowerShell 2.0-s Windows PowerShell tervezett parancsmagok, szolgáltatók, modulok, beépülő modulok, beépülő modulok, szkriptek, függvények és profilok módosítás nélkül működnek a Windows PowerShell 4.0-ban.

Windows PowerShell 4.0 alapértelmezés szerint az Windows 8.1-re és Windows Server 2012 R2-re van telepítve. A Windows PowerShell 4.0 sp1 vagy Windows Server 2008 R2 rendszerű Windows 7-re való telepítéséhez töltse le és telepítse Windows Management Framework 4.0-s verzióját. A Windows Management Framework 4.0 telepítése előtt mindenképpen olvassa el a letöltés részleteit, és feleljen meg az összes rendszerkövetelményeknek.

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

Új funkciók a Windows PowerShell

  • A Windows PowerShell Desired State Configuration (DSC) egy új felügyeleti rendszer a Windows PowerShell 4.0-s verziójában, amely lehetővé teszi a konfigurációs adatok telepítését és kezelését a szoftverszolgáltatások és azon környezet számára, amelyben ezek a szolgáltatások futnak. A DSC-vel kapcsolatos további információkért lásd: A Windows PowerShell Desired State Configuration használatának első lépései.
  • A Save-Help mostantól lehetővé teszi a távoli számítógépekre telepített modulok súgójának mentését. A Save-Help segítségével letöltheti a Súgó modult egy internethez csatlakoztatott ügyfélprogramból (amelyen nem minden olyan modul van telepítve, amelyhez segítségre van szüksége), majd másolja a mentett súgót egy távoli megosztott mappába vagy egy olyan távoli számítógépre, amely nem rendelkezik internet-hozzáféréssel.
  • A Windows PowerShell hibakeresőt továbbfejlesztettük, hogy lehetővé tegye a Windows PowerShell munkafolyamatok, valamint a távoli számítógépeken futó szkriptek hibakeresését. Windows PowerShell munkafolyamatok mostantól a szkript szintjén is hibakeresést végezhetnek a Windows PowerShell parancssorból vagy Windows PowerShell ISE-ből. Windows PowerShell szkriptek, köztük a szkript-munkafolyamatok, mostantól hibakeresést végezhetnek a távoli munkamenetek során. A távoli hibakeresési munkamenetek megmaradnak Windows PowerShell leválasztott, majd később újracsatlakoztatott távoli munkameneteken keresztül.
  • A Register-ScheduledJob és a Set-ScheduledJobRunNow paramétere nem szükséges azonnali kezdési dátumot és időpontot beállítani a feladatokhoz a Trigger paraméterrel.
  • Az Invoke-RestMethod és az Invoke-WebRequest mostantól lehetővé teszi az összes fejléc beállítását a Fejlécek paraméterrel. Bár ez a paraméter mindig is létezett, a webes parancsmagok számos paraméterének egyike volt, amely kivételeket vagy hibákat eredményezett.
  • A Get-Module egy új, ModuleSpecification[] típusú, FullyQualifiedName paraméterrel rendelkezik. A Get-Module FullyQualifiedName paramétere mostantól lehetővé teszi egy modul megadását a modul nevével, verziójával és opcionálisan a GUID azonosítójával.
  • A Windows Server 2012 R2 alapértelmezett végrehajtási szabályzatbeállítása a RemoteSigned. A Windows 8.1-ben nincs változás az alapértelmezett beállításban.
  • A Windows PowerShell 4.0-tól kezdve a dinamikus metódusneveket használó metódushívás támogatott. Egy változóval tárolhatja a metódus nevét, majd dinamikusan meghívhatja a metódust a változó meghívásával.
  • Az aszinkron munkafolyamat-feladatok már nem törlődnek, ha a PSElapsedTimeoutSec munkafolyamat közös paramétere által megadott időtúllépési időszak lejárt.
  • A New-JobTrigger és a Set-JobTrigger parancsmagokhoz hozzáadtunk egy repeatIndefinitely nevű új paramétert. Ez szükségtelenné teszi egy TimeSpan.MaxValue érték megadását az IsmétlésDuration paraméterhez egy ütemezett feladat határozatlan időre történő ismételt futtatásához.
  • Passthru paraméter lett hozzáadva az Enable-JobTrigger és a Disable-JobTrigger parancsmagokhoz. A Passthru paraméter megjeleníti a parancs által létrehozott vagy módosított objektumokat.
  • A Munkacsoport add-Computer és Remove-Computer parancsmagokban való megadásához használt paraméternevek mostantól konzisztensek. Mindkét parancsmag a WorkgroupName paramétert használja.
  • Hozzáadtunk egy új gyakori paramétert, a PipelineVariable paramétert. A PipelineVariable lehetővé teszi, hogy a piped parancsok (vagy egy piped parancs egy része) eredményeit olyan változóként mentse, amely a folyamat hátralévő részében továbbítható.
  • Mostantól támogatott a gyűjteményszűrés metódusszintaxissal. Ez azt jelenti, hogy mostantól egy objektumgyűjteményt is szűrhet egyszerűsített szintaxissal, hasonlóan a Where() vagy Where-Object metódushívásként formázott gyűjteményéhez. A következő egy példa: (Get-Process).where({$_. Név -match 'powershell'})
  • A Get-Process parancsmag új kapcsolóparaméterrel rendelkezik: IncludeUserName.
  • Hozzáadtunk egy új Get-FileHash parancsmagot, amely egy fájlkivonatot ad vissza a megadott fájl számos formátumának egyikében.
  • A Windows PowerShell 4.0-s verziójában, ha egy modul a DefaultCommandPrefix kulcsot használja a jegyzékben, vagy ha a felhasználó importál egy modult az Előtag paraméterrel, a modul ExportedCommands tulajdonsága megjeleníti a modul parancsait az előtaggal. Ha a parancsokat a ModulNév\CommandName modulszintaxissal futtatja, a parancsneveknek tartalmazniuk kell az előtagot.
  • A $PSVersionTable.PSVersion értéke 4.0-ra frissült.
  • A Where() operátor viselkedése megváltozott. Collection.Where('property -match name') a sztringkifejezések formátumba "Property -CompareOperator Value" való elfogadása már nem támogatott. A Where() operátor azonban szkriptblokk formátumban fogadja el a sztringkifejezéseket; ez továbbra is támogatott.

Új funkciók Windows PowerShell integrált szkriptelési környezetben (ISE)

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

Új funkciók Windows PowerShell munkafolyamatban

  • Támogatás lett hozzáadva egy új PipelineVariable gyakori paraméterhez az iteratív folyamatok kontextusában, például a System Center Orchestrator által használtakhoz; vagyis a parancsokat futtató folyamatok egyszerűen balról jobbra futnak, szemben a streameléssel futó, egymást átjárt folyamatokkal.
  • A paraméterkötés jelentősen ki lett javítva, hogy a tabulátorkiegészítési forgatókönyveken kívül is működjön, például olyan parancsokkal, amelyek nem léteznek az aktuális runspace-ben.
  • Az egyéni tárolótevékenységek támogatása Windows PowerShell munkafolyamathoz lett hozzáadva. Ha egy tevékenységparaméter Tevékenység, Tevékenység[] (vagy általános tevékenységgyűjtemény) típusú, és a felhasználó argumentumként adott meg egy szkriptblokkot, akkor Windows PowerShell Munkafolyamat a szkriptblokkot XAML-vé alakítja, ahogyan a normál Windows PowerShell szkript-munkafolyamat fordítás esetén is.
  • Összeomlás után Windows PowerShell munkafolyamat automatikusan újracsatlakozik a felügyelt csomópontokhoz.
  • Mostantól a ThrottleLimit tulajdonság használatával szabályozhatja a Foreach -Parallel tevékenységmegadásokat.
  • Az ErrorAction common paraméter új érvényes értékkel ( Suspend) rendelkezik, amely kizárólag munkafolyamatokhoz használható.
  • A munkafolyamat-végpontok automatikusan bezáródnak, ha nincsenek aktív munkamenetek, nincsenek folyamatban lévő feladatok és nincsenek függőben lévő feladatok. Ez a funkció megőrzi a munkafolyamat-kiszolgálóként működő számítógépen található erőforrásokat, amikor teljesülnek az automatikus lezárási feltételek.

A Windows PowerShell Web Services új funkciói

  • Ha hiba történik Windows PowerShell Web Servicesben (PSWS, más néven Felügyeleti OData IIS-bővítmény), miközben egy parancsmag fut, a rendszer részletesebb hibaüzeneteket ad vissza a hívónak. Emellett a hibakódok a Windows Azure REST API hibakódra vonatkozó irányelveit követik.
  • A végpontok mostantól definiálhatják az API-verziót, valamint kikényszeríthetik egy adott API-verzió használatát. Amikor a verzióeltérések az ügyfél és a kiszolgáló között fordulnak elő, hibák jelennek meg mind az ügyfél, mind a kiszolgáló számára.
  • A küldési séma kezelése egyszerűbb lett, mert automatikusan generál értékeket a séma hiányzó mezőihez. A létrehozás hasznos kiindulási pontként történik, még akkor is, ha a küldési séma nem létezik.
  • A PSWS-ben a típuskezelést továbbfejlesztettük az alapértelmezett konstruktortól eltérő konstruktort használó típusok támogatásához úgy, hogy az Windows PowerShell PSTypeConverteréhez hasonlóan viselkednek. Ez lehetővé teszi, hogy összetett típusokat használjon a PSWS-sel.
  • A PSWS mostantól lehetővé teszi egy társított példány kibontását lekérdezés futtatásakor. Nagyobb bináris tartalom (például képek, hang vagy videó) esetén az átviteli költség jelentős, és jobb, ha kódolás nélkül továbbít bináris adatokat. A PSWS elnevezett erőforrás-streameket használ a kódolás nélküli átvitelhez. A nevesített erőforrás-adatfolyam egy Edm.Stream típusú entitás tulajdonsága. Minden megnevezett erőforrásfolyam külön URI-vel rendelkezik a GET vagy AZ UPDATE műveletekhez.
  • Az OData-műveletek mostantól lehetővé teszik a nem CRUD -metódusok (létrehozás, olvasás, frissítés és törlés) meghívását egy erőforráson. Egy műveletet úgy hívhat meg, hogy http POST-kérést küld a művelethez definiált URI-nak. A művelet paraméterei a POST-kérelem törzsében vannak meghatározva.
  • A Windows Azure-irányelveknek való konzisztensség érdekében minden URL-címet egyszerűsíteni kell. A kulcsszegmensben található változás lehetővé teszi, hogy az egyes kulcsok szegmensekként jelenjenek meg. Vegye figyelembe, hogy a több kulcsértéket használó hivatkozásoknak vesszővel elválasztott értékeket kell használniuk a zárójeles jelölésben, mint korábban.
  • A PSWS ezen kiadása előtt a Létrehozás, Frissítés vagy Törlés műveletek végrehajtásának egyetlen módja a Post, Put vagy Delete meghívása volt egy legfelső szintű erőforráson. A PSWS ezen kiadásában újdonságként a tartalmazott erőforrás-műveletek lehetővé teszik, hogy a felhasználók ugyanazt az eredményt érjék el, miközben ugyanazt az erőforrást kevésbé közvetlenül érik el, és úgy közelítenek, mintha ezek az erőforrások lennének tárolva.

A Windows PowerShell Web Access új funkciói

  • A webalapú Windows PowerShell Web Access-konzolon leválaszthatja a kapcsolatot a meglévő munkamenetekkel, és újra csatlakozhat hozzá. A webalapú konzol Mentés gombjával anélkül szakíthatja meg a munkamenetet, hogy törölené azt, és újra csatlakozik a munkamenethez.
  • Az alapértelmezett paraméterek a bejelentkezési oldalon jeleníthetők meg. Az alapértelmezett paraméterek megjelenítéséhez konfigurálja az értékeket a bejelentkezési lap Opcionális kapcsolatbeállítások területén megjelenő összes beállításhoz egy web.confignevű fájlban. A web.config fájl használatával konfigurálhatja az összes választható kapcsolatbeállítást, kivéve egy második vagy másodlagos hitelesítőadat-készletet.
  • Az Windows Server 2012 R2-ben távolról kezelheti a Windows PowerShell Web Access engedélyezési szabályait. Az Add-PswaAuthorizationRule és a Test-PswaAuthorizationRule parancsmagok mostantól tartalmaznak egy hitelesítő paramétert, amely lehetővé teszi a rendszergazdák számára az engedélyezési szabályok távoli számítógépről vagy Windows PowerShell Web Access-munkamenetben történő kezelését.
  • Mostantól több Windows PowerShell Web Access-munkamenetet is futtathat egyetlen böngésző-munkamenetben, ha minden munkamenethez új böngészőlapot használ. A webalapú Windows PowerShell-konzolon már nem kell megnyitnia egy új böngésző-munkamenetet, hogy új munkamenethez csatlakozzon.

A Windows PowerShell 4.0 jelentős hibajavításai

  • A Get-Counter mostantól olyan számlálókat tud visszaadni, amelyek aPosztróf karaktert tartalmaznak a Windows francia kiadásaiban.
  • Most már megtekintheti a GetType metódust deszerializált objektumokon.
  • #Requires utasítások mostantól lehetővé teszik, hogy a felhasználók rendszergazdai hozzáférési jogosultságokat követelhessenek meg, ha szükséges.
  • Az Import-Csv parancsmag most figyelmen kívül hagyja az üres sorokat.
  • Kijavítottunk egy hibát, amely miatt Windows PowerShell ISE túl sok memóriát használ az Invoke-WebRequest parancs futtatásakor.
  • A Get-Module mostantól egy Verzió oszlopban jeleníti meg a modulverziókat.
  • Remove-Item -Recurse mostantól a várt módon eltávolítja az elemeket az almappákból.
  • Egy UserName tulajdonság lett hozzáadva a Get-Process kimeneti objektumokhoz.
  • Az Invoke-RestMethod parancsmag mostantól az összes elérhető eredményt visszaadja.
  • A bővítménytag mostantól akkor is lép érvénybe a kivonattáblákon, ha a kivonattáblákhoz még nem fértek hozzá.
  • Select-Object -Expand a továbbiakban nem fog meghiúsulni, vagy kivételt hoz létre, ha a tulajdonság értéke null vagy üres.
  • A Get-Process mostantól más parancsokkal is használható egy folyamatban, amelyek a ComputerName tulajdonságot az objektumokból szerzik be.
  • A ConvertTo-Json és a ConvertFrom-Json mostantól elfogadhatja a kifejezéseket a dupla idézőjelek között, és a hibaüzenetei honosíthatók.
  • A Get-Job mostantól az összes befejezett ütemezett feladatot visszaadja, még az új munkamenetekben is.
  • Kijavítottuk a Windows PowerShell 4.0 fájlrendszerszolgáltatójával történő virtuális merevlemezek csatlakoztatásával és leválasztásával kapcsolatos problémákat. Windows PowerShell most már képes észlelni az új meghajtókat, amikor ugyanabban a munkamenetben vannak csatlakoztatva.
  • A feladattípusok használatához már nem kell explicit módon betöltenie az ScheduledJob - vagy munkafolyamat-modulokat .
  • Teljesítménybeli fejlesztések történtek a beágyazott munkafolyamatokat meghatározó munkafolyamatok importálásának folyamatában; ez a folyamat most már gyorsabb.

A Windows PowerShell 3.0 új funkciói

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

Windows PowerShell munkafolyamat

Windows PowerShell Workflow a Windows Workflow Foundation erejét Windows PowerShell. Munkafolyamatokat írhat XAML vagy Windows PowerShell nyelven, és ugyanúgy futtathatja őket, mint egy parancsmagot. A Get-Command parancsmag munkafolyamat-parancsokat kap, a Get-Help parancsmag pedig segítséget kap a munkafolyamatokhoz.

A munkafolyamatok olyan többszámítógépes felügyeleti tevékenységek sorozatai, amelyek hosszú ideig futó, megismételhető, gyakori, párhuzamosítható, megszakítható, felfüggeszthető és újraindíthatóak. A munkafolyamatok szándékos vagy véletlen megszakításból, például hálózati kimaradásból, a Windows újraindításából vagy áramkimaradásból folytathatók.

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

A Windows PowerShell Munkafolyamat előnyei a következők:

  • Sorrendbe állítva, hosszan futó feladatok automatizálása.
  • A hosszú ideig futó feladatok távoli monitorozása. A tevékenységek állapota és előrehaladása bármikor látható.
  • Többszámítógépes felügyelet. Egyszerre több száz felügyelt csomóponton futtathat feladatokat munkafolyamatként. Windows PowerShell munkafolyamat tartalmazza a gyakori felügyeleti paraméterek beépített kódtárát, például a PSComputerName függvényt, amely lehetővé teszi a többszámítógépes felügyeleti forgatókönyveket.
  • Összetett folyamatok egyetlen feladatvégrehajtása. A kapcsolódó szkripteket kombinálhatja, amelyek teljes körű forgatókönyvet implementálnak egyetlen munkafolyamatban.
  • Persistence.: A munkafolyamatokat a rendszer a szerző által meghatározott meghatározott pontokra menti (vagy ellenőrzi), hogy a munkafolyamatot az utolsó megőrzött feladatból (vagy ellenőrzőpontból) folytathassa a munkafolyamat újraindítása helyett.
  • Robosztussági. Automatikus hibahelyreállítás. A munkafolyamatok túlélik a tervezett és nem tervezett újraindításokat. Felfüggesztheti a munkafolyamat végrehajtását, majd folytathatja a munkafolyamatot az utolsó adatmegőrzési pontról. A munkafolyamat-szerzők meghatározott tevékenységeket jelölhetnek ki újrafuttatásra egy vagy több felügyelt csomópont meghibásodása esetén.
  • Leválasztási, újracsatlakozási és futtatási képesség leválasztott munkamenetekben. A felhasználók csatlakozhatnak a munkafolyamat-kiszolgálóhoz, és leválaszthatják a kapcsolatot, de a munkafolyamat folyamatosan fut. A munkafolyamat megszakítása nélkül kijelentkezhet az ügyfélszámítógépről, vagy újraindíthatja az ügyfélszámítógépet, és figyelheti a munkafolyamat végrehajtását egy másik számítógépről.
  • Ütemezési. A munkafolyamat-feladatok bármely Windows PowerShell parancsmaghoz vagy szkripthez hasonlóan ütemezhetők.
  • Munkafolyamat- és kapcsolatszabályozás. A munkafolyamatok végrehajtása és a csomópontokhoz való csatlakozás szabályozható, így skálázható és magas rendelkezésre állású forgatókönyvek hozhatók létre.

Webes Windows PowerShell-elérés

Windows PowerShell Web Access egy Windows Server 2012 funkció, amellyel a felhasználók Windows PowerShell parancsokat és szkripteket futtathatnak egy webalapú konzolon. A webes konzolt használó eszközökhöz nincs szükség Windows PowerShell, távfelügyeleti szoftverre vagy böngésző beépülő modul telepítésére. Mindössze egy megfelelően konfigurált Windows PowerShell Web Access-átjáróra és egy JavaScriptet támogató és cookie-kat elfogadó ügyféleszköz-böngészőre van szükség.

További információ: Windows PowerShell Web Access üzembe helyezése.

Az ISE új Windows PowerShell funkciói

A Windows PowerShell 3.0-s verzió esetében Windows PowerShell integrált szkriptelési környezet (ISE) számos új funkcióval rendelkezik, többek között az IntelliSense, Show-Command ablak, az egyesített konzolablak, a kódrészletek, a zárójelek egyeztetése, a kibontott összecsukási szakaszok, az automatikus mentés, a legutóbbi elemek listája, a rich copy, a blokkmásolás és a Windows PowerShell szkript írásának teljes támogatása Munkafolyamatok. További információ: about_Windows_PowerShell_ISE.

A Microsoft .NET-keretrendszer 4 támogatása

Windows PowerShell a Common Language Runtime 4.0-ra épül. A parancsmagok, szkriptek és munkafolyamat-szerzők az új Microsoft .NET-keretrendszer 4 osztályt használhatják a Windows PowerShell- és alkalmazáskompatibilitást és üzembe helyezést, Managed Extensibility Framework, párhuzamos számítástechnikát, hálózatkezelést, Windows Communication Foundationt és Windowst Munkafolyamat-alap.

Windows előtelepítési környezet támogatása

Windows PowerShell 3.0 a Windows előtelepítési környezet (Windows PE) 4.0 opcionális összetevője Windows 8. A Windows PE egy minimális operációs rendszer, amely elindít egy olyan számítógépet, amely nem rendelkezik operációs rendszerrel, és előkészíti azt a Windows telepítésére. A Windows PE segítségével particionálhatja és formázhatja a merevlemezeket, lemezképeket másolhat a számítógépre, és elindíthatja a Windows telepítőjét egy hálózati megosztásból. Windows PowerShell 3.0 a Windows PE-n használható az üzembe helyezési, diagnosztikai és helyreállítási forgatókönyvek kezelésére.

Leválasztott munkamenetek

A Windows PowerShell 3.0-tól kezdődően a távoli számítógépre menti a New-PSSession parancsmaggal létrehozott, felhasználó által felügyelt állandó munkameneteket ("PSSessions"). Már nem függnek attól a munkamenettől, amelyben létrehozták őket.

Most már leválaszthatja a munkamenetet anélkül, hogy megzavarná a munkamenetben futó parancsokat. Bezárhatja a munkamenetet, és leállíthatja a számítógépet. Később újra csatlakozhat a munkamenethez egy másik munkamenetből ugyanazon vagy egy másik számítógépen.

A parancsmag ComputerName paramétere Get-PSSession mostantól lekéri a felhasználó számítógéphez csatlakozó összes munkamenetét, még akkor is, ha egy másik számítógépen egy másik munkamenetben indultak el. Csatlakozhat a munkamenetekhez, lekérheti a parancsok eredményeit, új parancsokat indíthat el, majd leválaszthatja a munkamenetet.

Új parancsmagok lettek hozzáadva a Leválasztott munkamenetek funkció támogatásához, beleértve Disconnect-PSSessiona , Connect-PSSessionés Receive-PSSessiona parancsmagot, és új paraméterek lettek hozzáadva a PSSessions-t kezelő parancsmagokhoz, például a Invoke-Command parancsmag InDisconnectedSession paraméteréhez.

A Leválasztott munkamenetek funkció csak akkor támogatott, ha a kapcsolat eredeti ("ügyfél") és a (kiszolgáló) végpontja egyaránt a 3.0 Windows PowerShell fut.

Robusztus munkamenet-kapcsolat

Windows PowerShell 3.0 észleli az ügyfél és a kiszolgáló közötti kapcsolat váratlan megszakadását, és megpróbálja helyreállítani a kapcsolatot, és automatikusan folytatni a végrehajtást. Ha az ügyfél-kiszolgáló kapcsolatot nem lehet újra létesíteni a megadott időpontban, a rendszer értesíti a felhasználót, és a munkamenet megszakad. Az újracsatlakozás során Windows PowerShell folyamatos visszajelzést ad a felhasználónak.

Ha a leválasztott munkamenetet az InvokeCommand használatával indították el, Windows PowerShell létrehoz egy feladatot a leválasztott munkamenethez, hogy megkönnyítse az újracsatlakozást és a végrehajtás folytatását.

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

Frissíthető súgórendszer

Most már letöltheti a modulok parancsmagjainak frissített súgófájljait. A Update-Help parancsmag azonosítja a legújabb súgófájlokat, letölti őket az internetről, kicsomagolja, ellenőrzi és telepíti őket a modul nyelvspecifikus könyvtárába.

A frissített súgófájlok használatához egyszerűen írja be a következőt Get-Help: . Nem kell újraindítania a Windowst vagy a Windows PowerShell. A $pshome könyvtár moduljainak súgójának frissítéséhez indítsa el a Windows PowerShell a "Futtatás rendszergazdaként" beállítással.

Az új Save-Help parancsmag letölti a súgófájlokat egy fájlrendszerkönyvtárba, például fájlmegosztásba, hogy támogassa azokat a felhasználókat, akik nem rendelkeznek internet-hozzáféréssel és tűzfal mögötti felhasználók. A felhasználók ezután a Update-Help parancsmaggal frissíthetik a súgófájlokat a fájlmegosztásból.

A parancsmaggal frissítheti az Update-Help összes támogatott felhasználói felületi kultúra összes vagy adott moduljának súgófájljait. Akár egy Update-Help parancsot is elhelyezhet a Windows PowerShell profiljában. Alapértelmezés szerint Windows PowerShell naponta legfeljebb egyszer tölti le egy modul súgófájljait.

Windows 8 és Windows Server 2012 modulok nem tartalmaznak súgófájlokat. A legújabb súgófájlok letöltéséhez írja be a következőt Update-Help: . További információért írja be Get-Help a (paraméterek nélküli) kifejezést, vagy tekintse meg a about_Updatable_Help című témakört.

Ha a parancsmag súgófájljai nincsenek telepítve a számítógépre, a Get-Help parancsmag mostantól automatikusan létrehozott súgót jelenít meg. Az automatikusan létrehozott súgó tartalmazza a parancs szintaxisát és a parancsmag súgófájlok letöltésére való használatával Update-Help kapcsolatos utasításokat.

Bármely modulszerző támogathatja a modulhoz tartozó frissíthető súgót. Felveheti a súgófájlokat a modulba, és az Frissíthető súgó segítségével frissítheti őket, vagy kihagyhatja a súgófájlokat, és az Frissíthető súgóval telepítheti őket. Az frissíthető súgó támogatásával kapcsolatos további információkért lásd: Frissíthető súgó támogatása.

Továbbfejlesztett online súgó

Windows PowerShell online súgó minden felhasználó számára értékes erőforrás, de különösen fontos azoknak a felhasználóknak, akik nem vagy nem tudják telepíteni a frissített súgófájlokat.

Ha online segítséget szeretne kapni bármely Windows PowerShell parancsmaghoz, írja be a következőt:

Get-Help <cmdlet-name> -Online

Windows PowerShell megnyitja a súgótémakör online verzióját az alapértelmezett internetböngészőben.

A Windows PowerShell 3.0 Get-Help -Online funkciója most még hatékonyabb, mert akkor is működik, ha a parancsmag súgófájljai nincsenek telepítve a számítógépre. A Get-Help -Online funkció lekéri az online súgótémakör URI-ját a parancsmagok és speciális függvények HelpUri tulajdonságából.

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

A Windows PowerShell 3.0-tól kezdődően a C# parancsmagok szerzői feltölthetik a HelpUri tulajdonságot egy HelpUri attribútum létrehozásával a parancsmagosztályban. A speciális függvények szerzői meghatározhatnak egy HelpUri tulajdonságot a CmdletBinding attribútumban. A HelpUri tulajdonság értékének a "http" vagy a "https" karakterrel kell kezdődnie.

Az XML-alapú parancsmag súgófájljának vagy a parancsmagnak az első kapcsolódó hivatkozásában is szerepelhet egy HelpUri érték. Megjegyzésalapú súgó hivatkozásirányelvének csatolása egy függvényben.

Az online súgó támogatásáról további információt az Online súgó támogatása című témakörben talál.

CIM-integráció

Windows PowerShell 3.0 tartalmazza a Common Information Model (CIM) támogatását, amely a rendszerek, hálózatok, alkalmazások és szolgáltatások felügyeleti információinak közös definícióit biztosítja, lehetővé téve számukra a felügyeleti információk heterogén rendszerek közötti cseréjét. A CIM támogatása a Windows PowerShell 3.0-s verziójában, beleértve az új vagy meglévő CIM-osztályokon alapuló Windows PowerShell parancsmagok készítésének lehetőségét, a parancsmagdefiníció XML-fájljain alapuló parancsokat, a CIM-.NET-keretrendszer támogatását. API- és CIM-felügyeleti parancsmagok és WMI 2.0-szolgáltatók.

Munkamenet konfigurációs fájljai

A Windows PowerShell 3.0-tól kezdve egyéni munkamenet-konfigurációt tervezhet egy fájllal. Az új munkamenetkonfigurációs fájl lehetővé teszi a munkamenet-konfigurációt használó munkamenetek környezetének meghatározását, beleértve a munkamenetekbe betöltött modulok, szkriptek és formátumfájlok, a felhasználók által használható parancsmagok és nyelvi elemek, a futtatható modulok és szkriptek, valamint az általuk látható változók meghatározását.

Létrehozhat olyan munkamenetet, amelyben a felhasználók csak egy adott modul parancsmagjait futtathatják, vagy olyan munkamenetet, amelyben a felhasználók teljes nyelvvel rendelkeznek, hozzáférhetnek az összes modulhoz, és hozzáférhetnek a speciális feladatokat végrehajtó szkriptekhez.

A Windows PowerShell korábbi verzióiban a vezérlés ezen a szinten csak azok számára volt elérhető, akik C#-programot vagy összetett indítási szkriptet írhattak. Most a számítógép Rendszergazdák csoportjának bármely tagja testre szabhatja a munkamenet-konfigurációt egy konfigurációs fájl használatával.

Munkamenetkonfigurációs fájl létrehozásához használja a New-PSSessionConfigurationFile parancsmagot. A munkamenet-konfigurációs fájl munkamenetkonfigurációra való alkalmazásához használja a vagy a Register-PSSessionConfiguration "Set-PSSessionConfiguration parancsmagokat.

További információ: about_Session_Configuration_Files és New-PSSessionConfigurationFile.

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

Mostantól ütemezhet Windows PowerShell háttérfeladatokat, és kezelheti őket a Windows PowerShell és a Feladatütemezőben.

Windows PowerShell ütemezett feladatok a Windows PowerShell háttérfeladatok és a Feladatütemező tevékenységek hasznos hibridje.

A Windows PowerShell háttérfeladathoz hasonlóan az ütemezett feladatok aszinkron módon futnak a háttérben. A befejezett ütemezett feladatok példányai a feladat parancsmagjaival kezelhetők, például Start-Job és Get-Job.

A Feladatütemező-feladatokhoz hasonlóan ütemezett feladatokat is futtathat egy egyszeri vagy ismétlődő ütemezésben, vagy egy műveletre vagy eseményre reagálva. Az ütemezett feladatokat megtekintheti és kezelheti a Feladatütemezőben, szükség szerint engedélyezheti és letilthatja őket, futtathatja vagy sablonként használhatja őket, és megadhatja a feladatok indításának feltételeit.

Emellett az ütemezett feladatokhoz testre szabott parancsmagok is hozzá vannak adva a kezelésükhöz. A parancsmagok lehetővé teszik az ütemezett feladatok létrehozását, szerkesztését, kezelését, letiltását és újbóli engedélyezését, ütemezett feladat-eseményindítók létrehozását és ütemezett feladatbeállítások beállítását.

Az ütemezett feladatokról további információt a about_Scheduled_Jobs című témakörben talál.

Windows PowerShell nyelvi fejlesztések

Windows PowerShell 3.0 számos olyan funkciót tartalmaz, amelyek célja a nyelv egyszerűbbé, könnyebben használhatóvá tétele és a gyakori hibák elkerülése. A fejlesztések közé tartozik a tulajdonságnumerálás, a szám- és hossztulajdonságok skaláris objektumokon, új átirányítási operátorok, $Using hatókör-módosító, PSItem automatikus változó, rugalmas szkriptformázás, változók attribútumai, egyszerűsített attribútumargumentumok, numerikus parancsnevek, Stop-Parsing operátor, továbbfejlesztett tömbplatform, új bitoperátorok, rendezett szótárak, PSCustomObject casting és továbbfejlesztett megjegyzésalapú súgó.

Új Core-parancsmagok

Új parancsmagok lettek hozzáadva a Windows PowerShell-telepítéshez, beleértve az ütemezett feladatok kezelésére szolgáló parancsmagokat, a leválasztott munkameneteket, a CIM-integrációt és az frissíthető súgórendszert.

  • 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
    • Rename-Computer
    • Show-ControlPanelItem
  • Microsoft.PowerShell.Utility
    • ConvertFrom-Json
    • ConvertTo-Json
    • 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

A meglévő core parancsmagok és -szolgáltatók fejlesztései

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

A Windows PowerShell-szolgáltatókat is jelentősen továbbfejlesztettük, beleértve a tanúsítványszolgáltatói támogatást a secure socket layer (SSL) tanúsítványok webes üzemeltetéshez való kezeléséhez, a hitelesítő adatok, az állandó hálózati meghajtók és a fájlrendszer-meghajtók alternatív adatfolyamainak támogatásához.

Távoli modul importálása és felderítése

Windows PowerShell 3.0 kibővíti a modulfelderítési, importálási és implicit újraegyeztetési képességeket a távoli számítógépeken. A Modul parancsmagok lekérik a modulokat a távoli számítógépeken, és Windows PowerShell újraindítással importálják a modulokat a távoli vagy helyi számítógépre. Az új CIM-munkamenet támogatása lehetővé teszi, hogy a CIM és a WMI használatával kezelje a nem Windows rendszerű számítógépeket úgy, hogy parancsokat importál a távoli számítógépen implicit módon futó helyi számítógépre.

További információt a és Import-Module parancsmagok súgótémakörökben Get-Module talál.

Továbbfejlesztett lapkiegészítés

A Windows PowerShell konzol tabulátorkiegészítése mostantól befejezi a parancsmagok, paraméterek, paraméterértékek, enumerálások, .NET-keretrendszerek típusai, COM-objektumok, rejtett könyvtárak és egyebek nevét. A tabulátorkiegészítési funkció teljesen át van írva egy új elemző és absztrakt szintaxisfa alapján, hogy több forgatókönyvet is támogatjon, beleértve a memórián belüli elemzési fákat és a középvonalas tabulátorkiegészítést.

Modul automatikus betöltése

A Get-Command parancsmag mostantól minden parancsmagot és függvényt lekér a számítógépre telepített összes modulból, még akkor is, ha a modul nincs importálva az aktuális munkamenetbe.

Amikor megkapja a szükséges parancsmagot, azonnal használhatja modulok importálása nélkül. Windows PowerShell modulokat a rendszer automatikusan importálja, amikor a modul bármely parancsmagját használja. A modult már nem kell megkeresnie és importálnia a parancsmagok használatához.

A modulok automatikus importálása a parancs Get-Command parancsmagjának használatával, helyettesítő karakterek nélküli parancsmagok futtatásával vagy helyettesítő karakterek nélküli parancsmagok futtatásával Get-Help aktiválódik.

A modulok automatikus importálását a $PSModuleAutoLoadingPreference beállítási változóval engedélyezheti, tilthatja le és konfigurálhatja.

További információ: about_Modules, about_Preference_Variables, valamint a és Import-Module parancsmagok Get-Command súgótémakörök.

Modulélmény fejlesztései

Windows PowerShell 3.0 speciális funkciókkal támogatja a modulokat, beleértve az alábbi új funkciókat.

  1. Modulnaplózás az egyes modulokhoz (LogPipelineExecutionDetails) és az új "Modulnaplózás bekapcsolása" Csoportházirend beállításhoz
  2. Kiterjesztett modulobjektumok, amelyek elérhetővé teszik a moduljegyzék értékeit
  3. A modulok új ExportedCommands tulajdonsága, beleértve a beágyazott modulokat is, amelyek minden típusú parancsot kombinálnak
  4. Az elérhető (nem importált) modulok jobb felderítése, beleértve a Path és a ListAvailable paraméterek engedélyezését ugyanabban a parancsban
  5. Új DefaultCommandPrefix kulcs a moduljegyzékekben, amely a modulkód módosítása nélkül elkerüli a névütközéseket.
  6. Továbbfejlesztett modulkövetelmények, beleértve a teljes mértékben minősített, verziójú és GUID azonosítójú modulokat, valamint a szükséges modulok automatikus importálását
  7. A parancsmag csendesebb, zökkenőmentesebb New-ModuleManifest működése.
  8. Új modulparaméter a #Requires
  9. Továbbfejlesztett Import-Module parancsmag a MinimumVersion és a RequiredVersion paraméterekkel.

Egyszerűsített parancsfelderítés

A munkamenethez elérhető parancsok felderítéséhez már nem kell minden modult importálnia. A Windows PowerShell 3.0-ban a parancsmag az Get-Command összes telepített modulból lekéri az összes parancsot. Ha pedig parancsot használ, a parancsot exportáló modul automatikusan importálódik a munkamenetbe.

Az új Show-Command parancsmag kifejezetten kezdőknek készült. Egy ablakban kereshet parancsokat. Megtekintheti az összes parancsot vagy szűrhet modul szerint, importálhat egy modult egy gombra kattintva, szövegdobozokkal és legördülő listákkal létrehozhat egy érvényes parancsot, majd az ablak elhagyása nélkül másolhatja vagy futtathatja a parancsot.

Továbbfejlesztett naplózási, diagnosztikai és Csoportházirend-támogatás

Windows PowerShell 3.0 javítja a parancsok és modulok naplózási és nyomkövetési támogatását az eseménykövetés windowsos (ETW) naplóinak támogatásával, a modulok szerkeszthető LogPipelineExecutionDetails tulajdonságával és a "Modulnaplózás bekapcsolása" Csoportházirend beállítással. A naplótulajdonságok megjelenítésével mostantól a napló részleteiből is lekérheti a paraméterértékeket.

Formázási és kimeneti fejlesztések

Az új formázási és kimeneti fejlesztések növelik az összes Windows PowerShell felhasználó hatékonyságát. A fejlesztések közé tartozik az összes stream kimeneti átirányítása, egy továbbfejlesztett Update-Type-parancsmag, amely dinamikusan ad hozzá típusokat Format.ps1xml-fájlok nélkül, szóburkolás a kimenetben, az egyéni objektumok alapértelmezett formázási tulajdonságai, a PSCustomObject típus, a WMI-objektumok és heterogén objektumok továbbfejlesztett formázása, valamint a metódusok túlterhelésének felderítése.

Továbbfejlesztett konzolgazdai élmény

A Windows PowerShell konzol gazdagép program új funkciókkal rendelkezik a Windows PowerShell 3.0-ban, beleértve az egyszálas apartmant alapértelmezés szerint. A Fájlkezelő új "Futtatás PowerShell-lel" beállításával egyszerűen a jobb gombbal kattintva futtathat szkripteket korlátlan munkamenetben. Az új konzol gazdagépindítási logikája Windows PowerShell gyorsabban elindul, és az új betűtípusok lehetővé teszik a jól ismert konzolablak-élmény személyre szabásához.

Új parancsmag és üzemeltetési API-k

Az új Parancsmag API és üzemeltetési API nyilvános speciális szintaxisfa (AST) API-kat és API-kat tartalmaz a folyamatlapozáshoz, a beágyazott folyamatokhoz, a runspace-készletek lapkiegészítéséhez, a Windows RT, az Elavult parancsmag attribútumhoz, valamint a FunctionInfo objektum Verb és Főnév tulajdonságaihoz.

Teljesítménnyel kapcsolatos fejlesztések

A Windows PowerShell jelentős teljesítménybeli fejlesztései az új nyelvi elemzőből származnak, amely a .NET-keretrendszer 4.-ben a Dynamic Runtime Language (DLR) nyelvre épül, valamint a futtatókörnyezeti szkriptek fordításával, a motor megbízhatóságának javításával, valamint a Get-ChildItem teljesítményt javító algoritmus változásaival, különösen a hálózati megosztások keresésekor.

Futtatókörnyezetek és megosztott gazdagépek támogatása

Windows PowerShell 3.0 támogatja a futtató fiókokat és a megosztott gazdagépeket.

A Windows PowerShell munkafolyamathoz tervezett Futtató fiókok funkció lehetővé teszi, hogy a munkamenet-konfiguráció felhasználói megosztott felhasználói fiók engedélyével futtatott munkameneteket hozzanak létre. Ez lehetővé teszi, hogy a kevésbé kiemelt felhasználók rendszergazdai engedélyekkel futtatjanak bizonyos parancsokat és szkripteket, és kevesebb idősebb felhasználót kell hozzáadniuk a Rendszergazdák csoporthoz.

A SharedHost funkció lehetővé teszi, hogy több számítógép több felhasználója egyidejűleg csatlakozzon egy munkafolyamat-munkamenethez, és figyelje a munkafolyamat előrehaladását. A felhasználók elindíthatnak egy munkafolyamatot az egyik számítógépen, majd csatlakozhatnak a munkafolyamat-munkamenethez egy másik számítógépen anélkül, hogy leválasztanák a munkamenetet az eredeti számítógépről. A felhasználóknak ugyanazokkal az engedélyekkel kell rendelkezniük, és ugyanazt a munkamenet-konfigurációt kell használniuk. További információ: "Windows PowerShell-munkafolyamat futtatása" a Első lépések-ban Windows PowerShell-munkafolyamattal.

Speciális karakterkezelés fejlesztései

A Windows PowerShell 3.0 speciális karakterek értelmezésének és helyes kezelésének képességének javítása érdekében a LiterálPath paraméter, amely az elérési utak speciális karaktereit kezeli, szinte minden olyan parancsmagra érvényes, amely rendelkezik Path paraméterrel, beleértve az új Update-Help és Save-Help a parancsmagokat is. Az elemző speciális logikát is tartalmaz a backtick karakter (`) és a szögletes zárójelek fájlnevekben és elérési utakban való kezelésének javítására.

Lásd még: