Použití příkazu v PowerShellu

Pouziti Prikazu V Powershellu



PowerShell je robustní prostředí příkazového řádku a skriptovací jazyk, který se většinou používá pro ovládání počítačových systémů a automatizaci administrativních prací. Použití příkazů je jedním z nejdůležitějších základů PowerShellu. Zejména „ použitím ” hraje klíčovou roli při správě zdrojů a zajištění efektivního spouštění kódu.

Tento článek prozkoumá různé aspekty příkazu „using“ v PowerShellu, včetně jeho syntaxe, účelu a praktických aplikací.







Účel prohlášení o „použití“.

Příkaz „using“ vám umožňuje určit, které jmenné prostory jsou v relaci použity. Přidáním jmenných prostorů můžete importovat třídy z modulů skriptů a sestavení a zjednodušit používání tříd a členů .NET.



MUSÍ prohlášení „použít“.

  • Příkaz „using“ se musí objevit před jakýmkoli jiným příkazem skriptu nebo modulu. Nesmí mu předcházet žádné nekomentované příkazy včetně parametrů.
  • V příkazu „using“ nesmí být přítomny žádné proměnné.
  • Příkaz „using“ by neměl být zaměňován s modifikátorem rozsahu „using:“ pro proměnné. Oba se liší svým účelem a významem.

Syntaxe příkazu „using“.



Syntaxe příkazu „using“ je:





pomocí jmenného prostoru < .NET-namespace >

Pojďme si představit následující příklad:



pomocí jmenného prostoru System.IO

$Bytes = [ Soubor ] ::ReadAllBytes ( 'D:\c sharp\Linuxhint1.txt' )
[ Informace o souboru ] ::Nový ( 'D:\c sharp\Linuxhint1.txt' )

Ve výše uvedeném kódu jsme nejprve označili jmenný prostor „System.IO“. Druhý řádek programu, [File]::ReadAllBytes(‘D:c sharpLinuxhint1.txt’), přečte každý bajt z dodaného souboru a umístí je do proměnné $Bytes. Na třetím řádku [FileInfo]::new(‘D:c sharpLinuxhint1.txt’) vytvoří novou instanci třídy FileInfo a vrátí objekt FileInfo.

Prohlášení „použití“ pro moduly

Pro načtení tříd modulu můžeme také použít příkaz „using“.

Syntax

pomocí modulu < název-modulu >

V této syntaxi lze jako hodnotu pro „jméno modulu“ použít „“, úplnou specifikaci modulu nebo cestu k souboru modulu.

Pokud je „název-modulu>“ cestou, můžete použít buď plně kvalifikovanou nebo relativní cestu. Pokud je ve skriptu přítomen příkaz „using“, relativní cesta je v tomto skriptu vyřešena.

PowerShell hledá dodaný modul v PSModulePath, když „“ je název nebo specifikace modulu. Následující klíče tvoří hashovací tabulku, která je specifikací modulu:

Název modulu - Požadované. Pojmenuje příslušný modul.

Volitelný GUID – určuje GUID modulu.

Kromě toho musíte zadat jeden ze tří níže uvedených klíčů.

ModuleVersion – Minimální povolená verze modulu je určena pomocí vlastnosti „ModuleVersion“.

Maximální verze – Definuje nejvyšší povolenou verzi modulu.

RequiredVersion – Určuje přesnou, potřebnou verzi modulu pomocí „RequiredVersion“. Ostatní klíče verze s tím nelze použít.

Kořenový modul (ModuleToProcess) binárního modulu nebo modulu skriptu je importován pomocí deklarace modulu „using“. Třídy specifikované ve vnořených modulech nebo skriptech, které jsou do modulu tvořeny tečkami, nejsou spolehlivě importovány. Všechny třídy, které chcete být dostupné uživatelům mimo modul, by měly být specifikovány v kořenovém modulu.

Zde je příklad:

pomocí modulu PSReadline

„použití“ prohlášení pro shromáždění

Příkaz „using“ lze také použít k předběžnému načtení typů ze sestavení .NET.

Syntax

pomocí montáže < .NET-assembly-path >

V této syntaxi, když je načteno sestavení, jsou typy .NET z tohoto sestavení předem načteny do skriptu před tím, než je analyzován. V důsledku toho je možné vyvinout nové třídy PowerShell, které využívají předinstalované typy sestavení.

Podívejte se na příklad použití příkazu „using“ se „sestavením“:

pomocí sestavení System.Windows.Forms

V tomto příkazu jsme načetli sestavu “ System.Windows.Forms” v PowerShellu pomocí příkazu „using“.

příkaz „using“ pro hashtable Keys

Hash tabulky ” jsou adaptabilní datové struktury používané v PowerShellu pro různé účely, včetně ukládání konfiguračních dat, poskytování argumentů rutinám a ukládání dat ve skriptech.

Kryptografický hash pro řetězec „ LinuxHint! “ se získá pomocí následujícího skriptu:

pomocí jmenného prostoru System.Text
pomocí jmenného prostoru System.IO [ tětiva ] $string = 'LinuxHint!'
[ tětiva ] $algoritmus = 'SHA1'

[ byte [ ] ] $stringbytes = [ UnicodeEncoding ] ::Unicode.GetBytes ( $string )

[ Proud ] $memorystream = [ MemoryStream ] ::Nový ( $stringbytes )
$hashfromstream = Get-FileHash -InputStream $memorystream '
-Algoritmus $algoritmus
$hashfromstream .Hash.ToString ( )

Výše uvedený kód PowerShellu začíná importem oborů názvů potřebných pro operace se soubory a kódování. Vstupní řetězec a hashovací algoritmus (v tomto případě „ SHA1 “), jsou pak definovány. Vstupní řetězec je poté zakódován pomocí „ Unicode ” pro vytvoření pole bajtů.

Obsah bajtového pole se pak použije k vytvoření „ paměťový proud “. Hodnota hash z paměťového toku se vypočítá pomocí poskytnutého algoritmu „SHA1“ pomocí „ Get-FileHash ”cmdlet. Skript končí vytištěním získané hash hodnoty jako řetězce na výstup.

Výstup

Závěr

' použitím ” v PowerShellu je výkonný nástroj pro specifikaci jmenných prostorů, modulů nebo sestavení. Jeho syntaxe a účel poskytují standardizovaný a bezpečný přístup pro manipulaci se zdroji, usnadňují řádnou likvidaci a snižují duplicitu kódu.