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:
Get-Process(Získej běžící procesy)Stop-Service(Zastav službu)New-Item(Vytvoř novou položku/soubor)
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:
- Správa uživatelů v Active Directory.
- Hromadná konfigurace cloudových služeb (Azure, AWS).
- Automatické zálohování a manipulace se soubory.
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?
- Univerzálnost: Dnes je to standard pro správu nejen Windows serverů, ale i cloudových infrastruktur a Microsoft 365.
- Srozumitelnost: Díky logickému pojmenovávání příkazů se v něm začátečník orientuje lépe než v kryptických zkratkách Linuxu.
- Pomocník (Help): PowerShell má propracovaný systém nápovědy. Příkaz
Get-Helpnásledovaný názvem cmdletu vám podrobně vysvětlí, jak se daný nástroj používá.
Související pojmy: CLI, Shell, .NET, Bash, Skriptování, Operační systém, Azure.
