Posted in: Základy PowerShellu

Svatá trojice – aneb 3 nejzákladnější příkazy PowerShellu

Svatou trojicí nazývám trojici nejdůležitějších cmdletů (příkazů), které nám dokáží pomoci při naší práci s PowerShellem. Jen pro pořádek v PowerShellu provádíme komentář znakem #

Get-command

Slouží k vypsání všech dostupných příkazů, které můžeme užívat. Problémem je opravdu obří množství příkazů, které se ještě liší dle toho, jaká rozšíření jsou na daném počítači dostupná.

Máme možnost nechat si vypsat jen podstatné příkazy v kontextu našeho aktuálního příkazového okna. V takovém případě PowerShell zohlední to, která rozšíření máme aktivní, zda jsme na vzdáleném počítači či provádíme správu konkrétní cloudové aplikace. Příkaz pak má tvar: 

Get-Command -ListImported

Již tady padla zmíňka o rozšířeních PowerShellu (tzv. modulech), pak je asi logické, že je možné zeptat se na příkazy, které obsahuje konkrétní rozšíření, např. modul pro Office 365: 

Get-Command -Module MSOnline

Poslední možnost, kterou zmíním je vypsání informací o konkrétním příkazu včetně jeho syntaxe, tuto možnost si ukážeme na příkazu pro vypsání obsahu adresáře: 

Get-Command Get-Childitem | select *

Get-Help

Tento příkaz slouží pro hledání v nápovědě, pokud nechcete pracovat s Googlem nebo online nápovědou. Další informace najdete v kapitole o nápovědě.

Get-Member

PowerShell stejně jako ostatní moderní jazyky je objektový, proto potřebuje něco, co dokáže vypasat vlastnosti a dovednosti objektu, tedy programátorsky metody a vlastnosti.

Pojďme si vše opět ukázat na příkladu, využijme opět procesy systému a pojďme zjistit, co vše můžeme s procesy dělat a zjišťovat o nich. Výše jsme si ukázali, že výpis procesů zajistí příkaz get-process. Pokud využijeme příkaz:

get-process | get-member

Dostaneme seznam obecných vlastností procesů a jejich popis, samozřejmostí je seznam úkonů, které můžeme s procesy dělat. Vidíme, že můžeme například proces zabít, což dělá metoda kill.

Z výše uvedeného víme, že zabití procesu správce úloh by se provedlo příkazem:

get-process -name taskmgr | kill
Back to Top