Tabulátorkiegészítés használata a rendszerhéjban

A PowerShell kiegészítéseket biztosít a bemenethez, hogy tippeket adjon, engedélyezze a felderítést, és felgyorsítsa a bemeneti bevitelt. A Parancsnevek, paraméternevek, argumentumértékek és fájlelérési utak mind a Tab billentyű lenyomásával adhatók meg.

A Tab billentyű az alapértelmezett kulcskötés Windows rendszeren. A PSReadLine olyan függvényt MenuComplete is biztosít, amely a Ctrl Szóköz billentyűkombinációhoz+ van kötve. A MenuComplete függvény a parancssor alatt megjeleníti az egyező befejezések listáját.

Ezek a kulcskötések PSReadLine-parancsmagokkal vagy a PowerShellt futtató alkalmazással módosíthatók. A kulcskötések eltérőek lehetnek nem Windows-platformokon. További információ: about_PSReadLine_Functions.

Beépített lapkiegészítési funkciók

A PowerShell a parancssori felület számos aspektusa esetében engedélyezte a lapkizárást.

Fájlnév befejezése

Ha automatikusan ki szeretne tölteni egy fájlnevet vagy elérési utat az elérhető lehetőségek közül, írja be a név egy részét, és nyomja le a Tab billentyűt. A PowerShell automatikusan kiterjeszti a nevet az első találatra. A Tab billentyű ismételt lenyomásával az összes rendelkezésre álló lehetőség végigfut az egyes billentyűk lenyomásával.

Parancs- és paraméternévkiegészítés

A parancsmagok neveinek lapbővítése kissé eltérő. Ha a parancsmag nevének fülbővítését szeretné használni, írja be a név teljes első részét (az igét) és az azt követő kötőjelet. A részleges egyezések nevének további részét is kitöltheti. Ha például beírjaget-co, majd lenyomja a Tab billentyűt, a PowerShell automatikusan kiterjeszti ezt a Get-Command parancsmagra (figyelje meg, hogy a betűk esetét is módosítja a szabványos űrlapra). Ha ismét lenyomja a Tab billentyűt, a PowerShell ezt az egyetlen egyező parancsmagnévre cseréli. Get-Content A tabulátorkiegészítés a PowerShell-aliasok és a natív végrehajtható fájlok feloldására is használható.

Az alábbi ábrán tabulátor- és menükiegészítési példák láthatók.

Tabulátor- és menükiegészítési példák

Egyéb lapkiegészítési fejlesztések

A PowerShell minden új verziója olyan fejlesztéseket tartalmaz a lapkiegészítéshez, amelyek javítják a hibákat és javítják a használhatóságot.

PowerShell 7.0

  • A tabulátorkiegészítés feloldja az enumerált vagy korlátozott típusú változó-hozzárendeléseket
  • A tabulátorkizárás kibontja a rövidített parancsmagokat és függvényeket. Például visszaadja a i-psdf<tab>Import-PowerShellDataFile

PowerShell 7.2

  • Nem lokális témakörök lapkiegészítésének about* javítása
  • A teljesítés során pozícióparaméterként kezelt splatting javítása
  • Kiegészítések hozzáadása megjegyzésalapú súgószavakhoz
  • Kiegészítés hozzáadása utasításokhoz #requires
  • Lapkimenet hozzáadása parancsmagok View paraméteréhez Format-*
  • Az osztályalapú argumentum-kiegészítések támogatásának hozzáadása

PowerShell 7.3

  • A lapkiegészítés javítása a parancsprogramhoz megadott blokkon belül ValidateScriptAttribute
  • Lapkiegészítés hozzáadva a cikluscímkékhez a következő és utáni cikluscímkékhez break : continue
  • A kivonatoló befejezésének javítása több forgatókönyvben
    • Paraméter splatting
    • Argumentumparaméter a következőhöz: Invoke-CimMethod
    • FilterHashtable paraméter a következőhöz: Get-WinEvent
    • A CIM-parancsmagok tulajdonságparamétere
    • Ismétlődő elemek eltávolítása a tagkiegészítési forgatókönyvekből
  • Perjelek támogatása a hálózati megosztás (UNC-elérési út) befejezésében
  • Tag automatikus kiegészítésének javítása
  • A paraméterek enumerálásainak rangsorolása ValidateSet
  • Típuskövető támogatás hozzáadása általános metódusokhoz típusparaméterekkel
  • Típuskövetkeztetés és kiegészítések javítása
    • Lehetővé teszi, hogy a metódusok megjelenjenek a befejezési eredmények között: ForEach-Object -MemberName
    • Megakadályozza a befejezést olyan kifejezéseken, amelyek érvénytelennek adnak[void]("") vissza()
    • Lehetővé teszi, hogy a nem alapértelmezett osztálykonstruktorok megjelenjenek, ha az osztály befejezése az AST-n alapul

A parancsparaméterek lapkiegészítésének egyéb módjai

A beépített tabulátorbővítést a TabExpansion vagy a TabExpansion2 belső függvény vezérli. Létrehozhat olyan függvényeket vagy modulokat, amelyek felülírják a függvények alapértelmezett viselkedését. A TabExpansion kulcsszó keresésével példákat találhat a PowerShell-galéria.

Az vagy ArgumentCompletions attribútumok ValidateSet használata paraméterekkel

Az ArgumentCompletions attribútum lehetővé teszi lapkiegészítési értékek hozzáadását egy adott paraméterhez. Az ArgumentCompletions attribútum hasonló a következőhöz ValidateSet: . Mindkét attribútum a megjelenítendő értékek listáját tartalmazza, amikor a felhasználó lenyomja a Tab billentyűt a paraméter neve után. Az ValidateSetértékeket azonban nem érvényesíti a rendszer.

További információkért lásd:

Az ArgumentCompleter attribútum használata vagy Register-ArgumentCompleter paraméterekkel

Az argumentum-befejező egy szkriptblokk vagy függvény, amely dinamikus lapkiegészítést biztosít a paraméterértékekhez.

Az ArgumentCompleter attribútum lehetővé teszi egy olyan függvény regisztrálását, amely lapkiegészítési értékeket biztosít a paraméterhez. Az argumentum-befejező függvénynek elérhetőnek kell lennie az attribútummal rendelkező paramétert tartalmazó függvény számára ArgumentCompleter . A függvény általában ugyanabban a szkriptben vagy modulban van definiálva.

További információ: Argumentumkiegészítő.

A Register-ArgumentCompleter parancsmag futtatáskor argumentum-befejező függvényként regisztrál egy szkriptblokkot a megadott parancsokhoz. Ez lehetővé teszi argumentum-kiegészítések definiálását a szkripten vagy modulon kívül, illetve natív parancsokhoz. További információ: Register-ArgumentCompleter.

Prediktív IntelliSense a PSReadLine-ban

A PSReadLine 2.1.0 bevezette a Prediktív IntelliSense funkciót. A prediktív IntelliSense a PSReadLine előzményei alapján nyújt javaslatokat a teljes parancsokhoz.

A PSReadLine 2.2.2 kibővíti a Prediktív IntelliSense teljesítményét azáltal, hogy támogatja a speciális logikát használó beépülő modulokat, hogy javaslatokat nyújtsanak a teljes parancsokhoz. Az Az.Tools.Predictor modul volt az első beépülő modul a Prediktív IntelliSense-hez. Gépi Tanulás használatával jelzi előre, hogy milyen Azure PowerShell-parancsot szeretne futtatni, és milyen paramétereket szeretne használni.

További információ: Prediktorok használata.