Az 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ágát, és lehetővé teszik a Windows-alapú környezetek egyszerűbb és átfogóbb szabályozását és 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ési adatokat, és megfeleljen az összes rendszerkövetelményeknek.

A témakör tartalma

Windows PowerShell 4.0-s frissítések 2014 novemberében kumulatív frissítés (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és a Windows RT 8.1,Windows 8.1 és Windows Server 2012 R2][KB3000850] (KB 3000850). A Windows PowerShell futtatásával Get-Hotfix -Id KB3000850 megállapíthatja, hogy a tudásbázis 3000850 telepítve van-e a rendszeren.

  • Frissítések meglévő parancsmagokhoz 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 kié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 a Windows PowerShell konzolon működnek.
  • Lekéréses mód fejlesztései

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

    • Az új DebugMode lehetővé teszi az erőforrásmodulok újrabetö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ációs 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ásvermét.
  • Rugalmassági fejlesztések

    • A LocalConfigurationManager erőforrásnak van egy új tulajdonsága, az ActionAfterReboot.
      • 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ások mostantól gyakrabban fordulnak elő, mint a PULL-műveletek, vagy fordítva.
    • Verziószámozás támogatása: A DSC képes felismerni egy újabb ügyfélen létrehozott dokumentumot (a WMF 5.0 része).
  • Hibaelhárítási fejlesztések

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

    • A rendszer most már használ egy 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ációs hitelesítő adatok titkosítva és visszafejtve vannak.
    • A PS-hitelesítő adatok visszafejtése beágyazott objektumban történik.
  • 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

A Windows PowerShell új funkciói

  • Az Windows PowerShell 5.0-tól kezdve osztályok használatával fejleszthet más objektumorientált programozási nyelvekhez hasonló formális szintaxissal és szemantikával. 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óstreamet vezet be, amellyel strukturált adatokat továbbíthat egy szkript és a hívók (vagy üzemeltetési környezet) között. Mostantól Write-Host használatával kimenetet bocsáthat ki az információs adatfolyamnak. Az információs adatfolyamok a PowerShell.Streams, a feladatok, az ütemezett feladatok és a munkafolyamatok esetében 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 adatfolyam-adatait. Write-Host az írási információk 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 határoz meg annak a változónak a neveként, amelyhez menteni szeretné a parancs Write-Host adatait.
    • Egy új beállításváltozó, az InformationPreference 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 automatikusan formázza a táblázatoszlopokat az adatfolyamon áthaladó első 300ms adat kiértékelésével.
  • A Microsoft Research szolgáltatással együttműködve egy ú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.

  • Egy ú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 olyan parancsmagokat tartalmaz, amelyekkel a fájlokat és mappákat archivált (más néven ZIP-) fájlokba tömörítheti, fájlokat nyerhet ki a meglévő ZIP-fájlokból, és frissítheti a ZIP-fájlokat a bennük tömörített fájlok újabb verzióival.

  • A PackageManagement nevű új modul segítségével szoftvercsomagokat fedezhet fel és telepíthet az interneten. A PackageManagement (korábbi nevén OneGet) modul a meglévő csomagkezelők (más néven csomagszolgáltatók) kezelője vagy multiplexerje, amely egységesíti a Windows-csomagkezelést egyetlen Windows PowerShell felülettel.

  • A PowerShellGet nevű új modul lehetővé teszi a modulok és DSC-erőforrások megkeresését, telepítését, közzétételét és frissítését a PowerShell-galéria vagy egy belső modultárban, amelyet a Register-PSRepository parancsmag futtatásával állíthat be.

  • Egy új, Rejtett nyelvű kulcsszó lett hozzáadva annak megadásához, 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 sem jelennek meg az IntelliSense eredményei között, kivéve, ha olyan környezetben van, ahol a tagnak láthatónak kell lennie; Az automatikus $This változónak például 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 egy új értéket fogad el, 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 Get-ChildItem -Recurse -Depth 2 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 ad vissza eredményeket.

  • Copy-Item mostantól fájlokat vagy mappákat másolhat az egyik Windows PowerShell munkamenetből egy másikba, ami azt jelenti, hogy a fájlokat átmásolhatja a 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 a -Destination paramétert 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ása úgy lett továbbfejlesztve, hogy a konzol gazdagépe (powershell.exe) mellett az összes ü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) a PowerShell átírásának bekapcsolása Csoportházirend beállítás engedélyezésével konfigurálhatók, amely a Felügyeleti sablonok/Windows-összetevők/Windows PowerShell között található.

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

  • A Windows PowerShell 5.0-s verziójá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 RFC5652 által dokumentált titkosítási védelemhez használt IETF szabványformátum használatával. 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, valamint a hibakeresés indítását és leállítását egy runspace-en. Tetszőleges futtatókörnyezetek (azaz olyan runspace-ek) hibakereséséhez, amelyek nem Windows PowerShell konzol vagy Windows PowerShell ISE-munkamenetek alapértelmezett runspace-jei) Windows PowerShell lehetővé teszi töréspontok beállítását egy szkriptben, és a hozzáadott töréspontok leállítják a szkript futását, amíg nem csatolhat hibakeresőt a runspace-szkript hibakereséséhez. A rendszer beágyazott hibakeresési támogatást adott 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 hozzá lettek adva a Microsoft.PowerShell.Utility modulhoz; megkönnyítik a tartalom átvitelét egy Windows PowerShell-munkamenetbe és -munkamenetből. A vágólap parancsmagjai képeket, hangfájlokat, fájllistákat és szöveget támogatnak.

  • A Microsoft.PowerShell.Management modulhoz egy ú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.

  • A New-TemporaryFile új parancsmaggal ideiglenes fájlt hozhat létre a szkriptelés részeként. By default, the new temporary file is created in C:\Users\<user name>\AppData\Local\Temp.

  • Az Out-File, Add-Content és 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 létrehozásához, amely szkriptek vagy DSC-erőforrások írásakor hasznos.

  • Mivel a fájlverzió adatai félrevezetőek lehetnek, különösen a fájlok 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 powershell.exe ezen tulajdonságainak értékeit, ahol $pid a Windows PowerShell futó munkamenetének folyamatazonosítóját tartalmazza: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 Enter-PSHostProcess egy adott folyamatazonosító megadásához vagy csatolásához, majd futtassa Get-Runspace a folyamat aktív runspace-jeinek visszaadásához. Futtassa Exit-PSHostProcess a folyamatból való leválasztáshoz, ha befejezte a szkript hibakeresését a folyamatban.

  • Ú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ője mostantól támogatja a parancs- vagy lapkiegészítést, és a beágyazott munkafolyamat-függvények hibakeresését is elvégezheti. A Ctrl+Break billentyűkombinációt lenyomva beírhatja a hibakeresőt egy futó szkriptbe, helyi és távoli munkamenetekbe, valamint munkafolyamat-parancsfájlba.

  • A Microsoft.PowerShell.Core modulhoz egy Debug-Job-parancsmag lett hozzáadva, a Windows PowerShell-munkafolyamat, a háttér és a távoli munkamenetekben futó feladatok futó feladatszkriptjeinek hibakereséséhez.

  • Új állapot, az AtBreakpoint lett hozzáadva Windows PowerShell feladatokhoz. Az AtBreakpoint-állapot 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ájá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, Import-Module és Remove-Module parancsmagok FullyQualifiedName paraméterének értékeként.

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

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

  • Get-Command új paramétere a -ShowCommandInfo, amely a ShowCommand adatokat PSObjectsként adja vissza. Ez különösen akkor hasznos, ha Show-Command Windows PowerShell ISE-ben fut Windows PowerShell táveléré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.

  • Egy új Get-ItemPropertyValue-parancsmaggal pontjelezés használata nélkül is lekérheti 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 szintaktikai színezést használ, ugyanúgy, mint Windows PowerShell ISE esetében.

  • Egy új NetworkSwitch-modul olyan parancsmagokat tartalmaz, amelyekkel kapcsolókat, virtuális LAN-t (VLAN) és alapszintű 2. rétegbeli hálózati kapcsolóport-konfigurációt alkalmazhat Windows Server 2012 R2 emblémával hitelesített 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, a Update-Help, az Import-PSSession, az Export-PSSession és a Get-Command új, ModuleSpecification típusú, FullyQualifiedModule 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 olyan osztályokat keres, amelyek tartalmazzák a DscResource attribútumot. Mostantól osztályokkal definiálhat DSC-erőforrásokat, amelyekben sem MOF-fájlra, sem DSCResource almappára nincs szükség a modulmappában. 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
  • A központi DSC hibajelentéssel a részletes hibainformációk nem csak az eseménynaplóban vannak naplózva, hanem egy központi helyre is elküldhetők későbbi elemzés céljából. Ezen a központi helyen tárolhatja azokat a DSC-konfigurációs hibákat, amelyek a környezetük bármely kiszolgálója esetében előfordultak. Miután a jelentéskészítő kiszolgáló definiálva van a metakonfigurációban, a rendszer minden hibát elküld 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 a célcsomópont konfigurálva van-e a lekérési kiszolgáló konfigurációinak lekéréséhez.
  • Az ISE egyszerű DSC-erőforrások készítésének Windows PowerShell fejlesztései. Most már elvégezheti az alábbiakat.
    • Listázhatja a konfiguráción vagy csomópontblokkon belüli összes DSC-erőforrást a Ctrl+Szóköz billentyűkombinációval egy üres sorba a blokkon belül.
    • Automatikus kiegészítés az enumerálási típusú erőforrás-tulajdonságokon.
    • A DSC-erőforrások DependsOn tulajdonságának automatikus befejezése a konfigurációban szereplő egyéb erőforráspéldányok alapján.
    • Továbbfejlesztett lapkiegészítés az erőforrás-tulajdonságértékek esetében.
  • A felhasználók most már futtathatnak egy erőforrást egy megadott hitelesítőadat-készlet alatt úgy, hogy hozzáadják a PSDscRunAsCredential attribútumot egy Node-blokkhoz. Például: PSDscRunAsCredential = Get-Credential Contoso\DscUser. Ez a funkció olyan konfigurációk létrehozásához hasznos, amelyek Windows Installert és végrehajtható telepítőket futtatnak, hozzáférnek a felhasználónkénti beállításjegyzékhez, vagy más feladatokat hajtanak végre az aktuális felhasználói környezeten kívül.
  • A Configuration 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()] a létrehozott konfigurációs függvényhez ad hozzá.
  • Az ú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 korlátozza a konfigurációt, hogy csak olyan elemeket tartalmazzon, amelyek konfigurálják a DSC helyi Configuration Manager. 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 a csomópontokra töredezettségekkel is továbbíthatja. Ahhoz, hogy egy csomópont megkapja egy konfigurációs dokumentum több töredékét, 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épek közötti szinkronizálás a DSC Windows PowerShell 5.0-s verzióban újdonság. 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 adhat meg függőségeket a számítógépek között a konfigurációs futtatások során. Ezek az erőforrások a WS-Man protokollon keresztüli CIM-kapcsolatok használatával biztosítják a csomópontok közötti szinkronizálást. 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ó, a DSC és a Windows PowerShell korlátozott futtatókörnyezetek használatával biztosíthatja a vállalatok számára az adatok elvesztését vagy az alkalmazottak sérülését, akár szándékos, akár nem szándékos módon. További információ a JEA-ról, beleértve az xJEA DSC-erőforrás letöltésének helyét is, olvassa el a Just Enough Administration (Elegendő felügyelet) című témakört.
  • 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. Beszerezheti az utolsó vagy az összes konfiguráció állapotát.
    • Az új Compare-DscConfiguration parancsmag összehasonlítja a megadott konfigurációt 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áskor 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 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 ki. 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.

A Windows PowerShell ISE új funkciói

  • Mostantól szerkesztheti a távoli Windows PowerShell parancsfájlokat é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 azon a számítógépen, amely a szerkeszteni kívánt fájlokat tárolja, majd psEdit <elérési utat és fájlnevet futtat a távoli számítógépen>. Ez a funkció megkönnyíti a Windows Server Server Server Core telepítési lehetőségén 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 Windows PowerShell ISE-ben végezheti el a távoli szkriptek hibakeresését.
  • Az összes megszakítása (Ctrl+B) új menüparancs a helyi és a távolról futó szkriptek hibakeresőjével is működik.

A Windows PowerShell Web Services új funkciói (Felügyeleti OData IIS-bővítmény)

  • Az Windows PowerShell 5.0-s verziójától kezdve Windows PowerShell parancsmagok készletét hozhatja 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.

Az Windows PowerShell 5.0 jelentős hibajavításai

  • Windows PowerShell 5.0 egy új COM-implementációt tartalmaz, amely jelentős teljesítménybeli javulást kínál a COM-objektumok használatakor. Az effektust bemutató videóért lásd: Com_Perf_Improvements.
  • 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átorkiegészítési időt.

A Windows PowerShell 4.0 új funkciói

Windows PowerShell 4.0 visszamenőlegesen kompatibilis. A 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 Windows PowerShell 4.0-s környezetben.

A 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 a Windows Management Framework 4.0-t. A Windows Management Framework 4.0 telepítése előtt olvassa el a letöltési adatokat, és minden rendszerkövetelménynek megfeleljen.

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

A Windows PowerShell új funkciói

  • 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ásokhoz és a szolgáltatások futtatásához használt környezetben. További információ a DSC-ről: Első lépések Windows PowerShell Desired State Configuration.
  • 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 használatával letöltheti a modul súgóját egy internetkapcsolattal rendelkező ügyfélről (amelyen nem feltétlenül van telepítve az összes modul, amelyhez segítségre van szüksége), majd a mentett súgót egy távoli megosztott mappába vagy egy olyan távoli számítógépre másolhatja, amely nem rendelkezik internet-hozzáféréssel.
  • A Windows PowerShell hibakeresőt továbbfejlesztettük, hogy lehetővé tegye Windows PowerShell munkafolyamatok, valamint a távoli számítógépeken futó szkriptek hibakeresését. Windows PowerShell munkafolyamatok mostantól hibakeresést végezhetnek a szkript szintjén a Windows PowerShell parancssorból vagy Windows PowerShell ISE-ből. Windows PowerShell szkriptek, beleértve a parancsfájl-munkafolyamatokat, mostantól távoli munkamenetek során is hibakeresést végezhetnek. 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 szükségtelenné teszi a feladatok azonnali kezdési dátumát és időpontját 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 Headers paraméterrel. Bár ez a paraméter mindig is létezett, a webes parancsmagok számos olyan paraméterének egyike volt, amely kivételeket vagy hibákat eredményezett.
  • A Get-Module egy új, "FullyQualifiedName" nevű paraméterrel rendelkezik, amelynek típusa ModuleSpecification[]. 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.
  • Az Windows Server 2012 R2 alapértelmezett végrehajtási házirend-beállítása 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 metódusok dinamikus metódusnevekkel történő meghívása 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 parancsmaghoz új, RepeatIndefinitely paraméter lett hozzáadva. Ez szükségtelenné teszi a 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ára szolgáló paraméternevek mostantól konzisztensek. Mindkét parancsmag a WorkgroupName paramétert használja.
  • Hozzá lett adva egy új gyakori paraméter, a PipelineVariable. A PipelineVariable lehetővé teszi, hogy egy vezetékes parancs (vagy egy vezetékes parancs egy része) eredményeit változóként mentse, amely a folyamat fennmaradó részében is átadható.
  • Mostantól támogatott a gyűjtemények metódusszintaxissal történő szűrése. Ez azt jelenti, hogy mostantól a Where() vagy Where-Object függvényhez hasonló, metódushívásként formázott egyszerűsített szintaxissal szűrheti az objektumok gyűjteményét. A következő egy példa: (Get-Process).where({$_. Név -match 'powershell'})
  • A Get-Process parancsmag új kapcsolóparaméterrel rendelkezik, az IncludeUserName paraméterrel.
  • Hozzá lett adva egy új parancsmag, a Get-FileHash, amely egy fájlkivonatot ad vissza egy adott 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ékfájlban, vagy ha a felhasználó importál egy prefix paraméterrel rendelkező modult, a modul ExportedCommands tulajdonsága megjeleníti a modulban az előtaggal rendelkező parancsokat. Ha a modul által minősített Szintaxis (ModuleName\CommandName) használatával futtatja a parancsokat, 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 továbbiakban nem támogatott a sztringkifejezések formátumba "Property -CompareOperator Value" való elfogadása. 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 is.
  • 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 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 haladnak, nem pedig a streameléssel futtatott egymást.
  • A paraméterkötés jelentősen továbbfejlesztve lett, 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 hozzá lett adva Windows PowerShell munkafolyamathoz. 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 parancsfájlblokkot XAML-vé alakítja, ahogyan az a szokásos Windows PowerShell parancsfájl-munkafolyamat fordításnál 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égi utasításokat.
  • Az ErrorAction common paraméter új érvényes értékkel ( Suspend) rendelkezik, amely kizárólag munkafolyamatokhoz használható.
  • A munkafolyamat-végpont mostantól automatikusan bezáródik, ha nincsenek aktív munkamenetek, nincsenek folyamatban lévő feladatok és nincsenek függőben lévő feladatok. Ez a funkció fenntartja az erőforrásokat a munkafolyamat-kiszolgálóként működő számítógépen, 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ód-irányelveit követik.
  • A végpontok most már definiálhatják az API-verziót, és kikényszeríthetik egy adott API-verzió használatát. Amikor az ügyfél és a kiszolgáló verzióeltéréseket észlel, a hibák az ügyfél és a kiszolgáló számára is megjelennek.
  • 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 típuskezelését továbbfejlesztettük, hogy az alapértelmezett konstruktortól eltérő konstruktort használó típusokat támogasson úgy, hogy az Windows PowerShell PSTypeConverteréhez hasonlóan viselkedik. Így összetett típusokat használhat 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 a bináris adatok kódolás nélküli átvitele. A PSWS elnevezett erőforrás-adatfolyamokat használ a kódolás nélküli átvitelhez. A megnevezett erőforrás-adatfolyam egy Edm.Stream típusú entitás tulajdonsága. Minden elnevezett erőforrásfolyam külön URI-val rendelkezik a GET vagy AZ UPDATE műveletekhez.
  • Az OData-műveletek mostantól lehetővé teszik a nem CRUD (létrehozás, olvasás, frissítés és törlés) metódusok 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ó módosítások lehetővé teszik, hogy az egyes kulcsok szegmensekként legyenek ábrázolva. Vegye figyelembe, hogy a több kulcsértéket használó hivatkozásokhoz zárójeles jelölésben vesszővel elválasztott értékekre van szükség, ahogy korábban is.
  • 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 Közzététel, a Put vagy a Delete meghívása volt egy felső 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 kevesebbet érnek el ugyanazt az erőforrást közvetlenül, és úgy közelítik meg, mintha ezek az erőforrások lennének.

A Windows PowerShell Web Access új funkciói

  • A webalapú Windows PowerShell Web Access-konzolon leválaszthatja a meglévő munkameneteket, é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 megjeleníthetők a bejelentkezési oldalon. Az alapértelmezett paraméterek megjelenítéséhez konfigurálja az értékeket az összes beállításhoz, amely a bejelentkezési oldal Választható kapcsolatbeállítások területén jelenik meg 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 alternatív hitelesítőadat-készletet.
  • Az Windows Server 2012 R2-ben távolról kezelheti 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, hogy távoli számítógépről vagy egy Windows PowerShell Web Access-munkamenetben kezeljék az engedélyezési szabályokat.
  • 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 új böngésző-munkamenetet megnyitnia ahhoz, hogy új munkamenethez csatlakozzon.

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

  • A Get-Counter mostantól olyan számlálókat is képes 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 lehetővé teszik a felhasználóknak, hogy szükség esetén rendszergazdai hozzáférési jogosultságot követelhessenek meg.
  • 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 távolítja el az elemeket az almappákból.
  • A Rendszer hozzáadta a UserName tulajdonságot 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 érvényes a kivonattáblákra, ha a kivonattáblákhoz még nem fértek hozzá.
  • Select-Object –A kibontás többé nem jár hibával, 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ó a folyamatokban, amelyek a ComputerName tulajdonságot az objektumokból szerzik be.
  • A ConvertTo-Json és a ConvertFrom-Json mostantól elfogadhatja a kifejezéseket dupla idézőjelek között, és a hibaüzenetek mostantól honosíthatók.
  • A Get-Job mostantól az összes befejezett ütemezett feladatot visszaadja, még az új munkamenetekben is.
  • Kijavítottuk a VHD-k fájlrendszerszolgáltatóval való csatlakoztatásával és leválasztásával kapcsolatos problémákat a Windows PowerShell 4.0-s verzióban. Windows PowerShell most már képes észlelni az új meghajtókat, amikor ugyanabban a munkamenetben vannak csatlakoztatva.
  • A feladattípusaik használatához már nem kell explicit módon betöltenie az Ütemezett feladat vagy a Munkafolyamat modult.
  • A beágyazott munkafolyamatokat meghatározó munkafolyamatok importálásának folyamatában teljesítménybeli fejlesztések történtek; 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 hozza Windows PowerShell. Munkafolyamatokat írhat XAML nyelven 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 futnak, megismételhetők, gyakoriak, párhuzamosíthatók, megszakíthatók, felfüggeszthetők és újraindíthatók. A munkafolyamatok szándékos vagy véletlen megszakítás, például hálózati kimaradás, Windows-újraindítás vagy áramkimaradás esetén folytathatók.

A munkafolyamatok hordozhatók 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:

  • Szekvenciált, hosszan futó feladatok automatizálása.
  • A hosszan 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 workflow tartalmaz egy beépített könyvtárat a gyakori felügyeleti paraméterek, mint például a PSComputerName, amely lehetővé teszi a többszámítógépes felügyeleti forgatókönyvek.
  • Összetett folyamatok egyetlen feladatvégrehajtása. Olyan kapcsolódó szkripteket kombinálhat, amelyek teljes körű forgatókönyvet implementálnak egyetlen munkafolyamatban.
  • Adatmegőrzés:a munkafolyamatokat a program a szerző által meghatározott meghatározott pontokra menti (vagy pipa) menti, így a munkafolyamatot az utolsó megőrzött feladatból (vagy ellenőrzőpontból) folytathatja ahelyett, hogy az elejétől újraindítaná a munkafolyamatot.
  • Erőteljesség. Automatikus hiba-helyreá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 kijelölhetnek bizonyos tevékenységeket, amelyeket újrafuttatnak 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. Kijelentkezhet az ügyfélszámítógépről, vagy újraindíthatja az ügyfélszámítógépet, és a munkafolyamat megszakítása nélkül figyelheti a munkafolyamat végrehajtását egy másik számítógépről.
  • Ütemezési. A munkafolyamat-feladatok ütemezhetők, mint bármely Windows PowerShell parancsmag vagy szkript.
  • Munkafolyamat- és kapcsolatszabályozás. A munkafolyamatok végrehajtása és a csomópontokhoz való csatlakozás szabályozható, ami lehetővé teszi a méretezhetőséget és a magas rendelkezésre állást.

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 webalapú 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 konzolpanel, a kódrészletek, a kapcsos zárójelek egyeztetése, a kibontási és ö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 munkafolyamatokat. 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-ben, olyan funkciókkal, mint az alkalmazások kompatibilitása és üzembe helyezése, Managed Extensibility Framework, párhuzamos számítástechnika, hálózatkezelés, Windows Communication Foundation és Windows Munkafolyamat-alaprendszer.

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

A 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 használható merevlemezek particionálására és formázására, lemezképek számítógépre másolására és a Windows telepítésének kezdeményezésére egy hálózati megosztásból. Windows PowerShell 3.0 a Windows PE rendszeren 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-stól kezdve a rendszer 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 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 újracsatlakozhat a munkamenethez egy másik munkamenetből ugyanazon vagy egy másik számítógépen.

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

Új parancsmagok lettek hozzáadva a Leválasztott munkamenetek funkció támogatásához, beleértve Disconnect-PSSessiona , Connect-PSSessionés Receive-PSSession, és új paramétereket 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 forrása ("ügyfél") és a kapcsolat megszakítása ("kiszolgáló") végpontja egyaránt a 3.0-s Windows PowerShell fut.

Robusztus munkamenet-kapcsolat

Windows PowerShell 3.0 észleli az ügyfél és a kiszolgáló közötti kapcsolat váratlan elveszté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 kiosztott időben, a felhasználó értesítést kap, és a munkamenet megszakad. Az újracsatlakozás során Windows PowerShell folyamatos visszajelzést nyújt 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ó, robusztus munkameneteket, például munkafolyamatokat igénylő feladatokat hajtsanak végre.

Frissíthető súgórendszer

Most már letöltheti a modulok parancsmagjaihoz tartozó frissített súgófájlokat. 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árban található modulok súgójának frissítéséhez indítsa el a Windows PowerShell a "Futtatás rendszergazdaként" beállítással.

Az internet-hozzáféréssel nem rendelkező és tűzfal mögötti felhasználók támogatásához az új Save-Help parancsmag letölti a súgófájlokat egy fájlrendszerkönyvtárba, például egy fájlmegosztásba. A felhasználók ezután a Update-Help parancsmag használatával 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 parancsot Update-Help 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 (paraméterek nélkül), vagy tekintse meg about_Updatable_Help.

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.

A modul bármely szerzője támogathatja a modulhoz tartozó frissíthető súgót. Felveheti a súgófájlokat a modulba, és frissítheti őket az Frissíthető súgó segítségével, vagy kihagyhatja a súgófájlokat, és a frissíthető súgó segítségével telepítheti őket. A frissíthető súgó támogatásáról további információt a Frissíthető súgó támogatása című témakörben talál.

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 bármilyen Windows PowerShell parancsmaghoz online segítséget szeretne kapni, í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 3.0-s Windows PowerShell kezdve a C#-parancsmagok szerzői feltölthetik a HelpUri tulajdonságot egy HelpUri attribútum létrehozásával a parancsmagosztályon. A speciális függvények szerzői meghatározhatnak egy HelpUri tulajdonságot a CmdletBinding attribútumon. A HelpUri tulajdonság értékének "http" vagy "https" betűvel kell kezdődnie.

Az XML-alapú parancsmagok súgófájljának vagy a . Megjegyzésalapú súgó hivatkozási irányelve egy függvényben.

További információ az online súgó támogatásáról: Online súgó támogatása a Microsoft Docs.

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 heterogén rendszerek közötti felügyeleti információk cseréjét. A CIM támogatása a Windows PowerShell 3.0-ban, beleértve az új vagy meglévő CIM-osztályokon alapuló Windows PowerShell parancsmagok létrehozásának lehetőségét, a parancsmagdefiníciós XML-fájlokon alapuló parancsokat, a CIM .NET-keretrendszer támogatását. API-, CIM-felügyeleti parancsmagok és WMI 2.0-szolgáltatók.

Munkamenet-konfigurációs fájlok

A Windows PowerShell 3.0-tól kezdve egy fájl használatával egyéni munkamenet-konfigurációt tervezhet. Az új munkamenet-konfigurá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 modulokat, szkripteket és formátumfájlokat, a felhasználók által használható parancsmagokat és nyelvi elemeket, a futtatható modulokat és szkripteket, valamint az általuk látható változókat.

Létrehozhat olyan munkamenetet, amelyben a felhasználók csak egy adott modulból futtathatják a parancsmagokat, vagy olyan munkamenetet, amelyben a felhasználók teljes nyelvvel rendelkeznek, minden modulhoz hozzáférhetnek, és hozzáférhetnek a speciális feladatokat végző szkriptekhez.

A Windows PowerShell korábbi verzióiban az ezen a szinten történő vezérlés 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.

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

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

Ütemezett feladatok és feladatütemező 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 Windows PowerShell háttérfeladatok és feladatütemező tevékenységek hasznos hibridje.

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ő tevékenységekhez hasonlóan ütemezett feladatokat is futtathat egy egyszeri vagy ismétlődő ütemezésben, illetve egy műveletre vagy eseményre válaszul. A Feladatütemezőben megtekintheti és kezelheti az ütemezett feladatokat, igény szerint engedélyezheti és letilthatja őket, futtathatja vagy sablonként használhatja őket, és feltételeket állíthat be a feladatok indításához.

Emellett az ütemezett feladatokhoz testre szabott parancsmagok is járnak 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 egyszerűbbé, könnyebben kezelhetővé és a gyakori hibák elkerülésére lettek kialakítva. A fejlesztések közé tartozik a tulajdonság-enumerálás, a skaláris objektumok számának és hosszának tulajdonságai, az új átirányítási operátorok, a $Using hatókör-módosító, a PSItem automatikus változó, a rugalmas szkriptformázás, a változók attribútumai, az egyszerűsített attribútumargumentumok, a numerikus parancsnevek, a Stop-Parsing operátor, a továbbfejlesztett tömbplatform, az új bitoperátorok, a rendezett szótárak, a PSCustomObject öntés és a 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 a 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óit 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át.

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 táveléré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 táveléréssel 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 parancsmagok súgótémakörökben Get-ModuleImport-Module talál.

Továbbfejlesztett lapkiegészítés

A Windows PowerShell konzolon a tabulátorkiegészítés 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 lapkiegészítési funkció teljesen át van írva egy új elemző és absztrakt szintaxisfa alapján, amely további forgatókönyveket támogat, beleértve a memóriabeli 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 a számítógépre telepített összes modulból lekéri az összes parancsmagot és függvényt, 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 parancsmagot használ. Többé nem kell megkeresnie és importálnia a modult a parancsmagjainak használatához.

A modulok automatikus importálása a parancsmag használatával, Get-Command a helyettesítő karakterek nélküli parancsmagok futtatásával, illetve a 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ó használatával engedélyezheti, tilthatja le és konfigurálhatja.

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

Modulélmény fejlesztései

Windows PowerShell 3.0 speciális funkciók támogatását biztosítja a modulokhoz, beleértve az alábbi új funkciókat.

  1. Modulnaplózás egyes modulokhoz (LogPipelineExecutionDetails) és az új "Modulnaplózás bekapcsolása" Csoportházirend beállítás
  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 hatékonyabb felderítése, beleértve az Elérési út é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óval és GUID azonosítóval rendelkező 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 #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-s verzió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. Az ablakban parancsokat kereshet. Megtekintheti az összes parancsot vagy szűrhet modul szerint, importálhat egy modult egy gombra kattintva, szövegmezők és legördülő listák használatával 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

A 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. Mostantól a naplóadatokból is lekérheti a paraméterértékeket a naplótulajdonságok megjelenítésével.

Formázási és kimeneti fejlesztések

Az új formázási és kimeneti fejlesztések javítják 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 konzolgazda é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" lehetőségével a jobb gombbal kattintva korlátlan munkamenetben futtathat szkripteket. 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 konzolablakok testreszabását.

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

Az új Cmdlet API és a Hosting API nyilvános speciális szintaxisfát (AST) tartalmazó API-kat és API-kat tartalmaz a folyamatok lapozásához, beágyazott folyamatokhoz, a runspace pools tab completion, Windows RT, az Elavult parancsmag attribútumhoz, valamint a FunctionInfo objektum Verb és Noun tulajdonságaihoz.

Teljesítménnyel kapcsolatos fejlesztések

A Windows PowerShell jelentős teljesítménybeli fejlesztései az új nyelvelemző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 és az Get-ChildItem algoritmus azon módosításaival, amelyek javítják a teljesítményét, 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 futtassanak munkameneteket. Ez lehetővé teszi, hogy a kevésbé kiemelt jogosultságú felhasználók rendszergazdai engedélyekkel futtatjanak bizonyos parancsokat és parancsfájlokat, és kevesebb vezető 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-ben 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: