Obsah

PowerShell

PowerShell byl původně vyvinut jako součást systému Windows (Windows PowerShell), ale dnes je jako PowerShell Core dostupný i pro Linux a macOS. Jeho unikátnost spočívá v tom, že s daty nemanipuluje jako s prostým textem, ale jako s bohatými datovými strukturami – objekty.


Hlavní rozdíl: Text vs. Objekty

V tradičních shellech (např. CMD nebo Bash) je výstupem příkazu text. Pokud chcete z výpisu získat jen velikost souboru, musíte text složitě „parsovat“ (řezat a hledat řetězce).

V PowerShellu dostanete objekt. Ten má své vlastnosti (vlastnosti) a metody (činnosti). * *Příklad:* Příkaz Get-Service nevrátí jen seznam jmen, ale objekty typu „Služba“, u kterých se můžete snadno zeptat na stav: (Get-Service).Status.


Klíčové koncepty

1. Cmdlety (Commandlets)

Základní příkazy v PowerShellu se nazývají cmdlety. Mají sjednocenou strukturu Sloveso-Podstatné jméno, což je dělá velmi intuitivními:

2. Roury (Pipeline)

Stejně jako v jiných shellech, i zde lze příkazy řetězit pomocí symbolu roury |. Protože se však předávají objekty, je to mnohem mocnější: Get-Service | Where-Object Status -eq „Running“ | Stop-Service (Najdi všechny služby, které běží, a všechny je zastav.)


Skriptování a automatizace

PowerShell používá skripty s příponou .ps1. Díky přístupu k celému .NET frameworku a systémovým rozhraním (WMI, COM) je v něm možné automatizovat téměř cokoliv:


Srovnání verzí

Funkce Windows PowerShell (5.1 a starší) PowerShell (7+ / Core)
Platforma Pouze Windows Windows, Linux, macOS
Základ .NET Framework .NET (Open Source)
Výkon Standardní Výrazně vyšší

Proč se PowerShell učit?


Související pojmy: CLI, Shell, .NET, Bash, Skriptování, Operační systém, Azure.