Pipe

Díky tomu, že je PowerShell objektově orientovaný, můžeme používat pipe (rouru). Pipe [pajp] přeposílá výstup jednoho cmdletu jako vstup druhého. Jejím znakem, který používáme pro zápis, je symbol | a syntaxe je následující: V některých případech není výstup prvního cmdletu jeden objekt, ale je jich více (pole). Pokud taková situace nastane, PowerShell automaticky použije Foreach cyklus a to znamená, že se druhý příkaz provede tolikrát, kolik je přeposláno výstupních objektů prvního příkazu. Cmdlety nemusí přijímat vstup z pipe, pokud se chceme ujistit, že daný cmdlet přijme vstup z pipe, vyvoláme podrobnou nápovědu o cmdletu, kde nalezneme údaj Accept pipeline. Hodnota údaje musí být True. Proměnná $_ znázorňuje aktuálně zpracovávaný objekt. Můžeme tak přistupovat k vlastnostem a metodám aktuálního objektu. Externí příkazy, jakými je např. ipconfig, nemusí mít jako výstup objekt, ale pouze řetězec znaků (string). PowerShell pak pracuje s výstupem jako se stringem.

Responsive image
Obrázek: Reprezentace pipe

Praktická ukázka:
        #Vezmi proces notepad a ukoči jej
        Get-Process notepad | Stop-Process
    

© 2019 Copyright: powershell.www3.cz