PowerShell (PS) je 16 bitový program pro automatizaci úloh a správu konfigurace od společnosti Microsoft, který se skládá z příkazového řádku a souvisejícího skriptovacího jazyka. Původně se jednalo pouze o součást systému Windows, známou pod názvem Windows PowerShell, která se 18. srpna 2016 stala open-source a multiplatformní díky uvedení PowerShell Core.
První z nich je postaven na frameworku .NET Framework, druhý na jádře .NET Core. V prostředí PS se úkoly správy obvykle provádějí prostřednictvím rutin (vyslovováno command-lets), což jsou specializované třídy .NET implementující určitou operaci. Ty fungují tak, že přistupují k datům v různých datových úložištích, jako je souborový systém nebo registr systému Windows, která jsou prostředí PS zpřístupněna prostřednictvím poskytovatelů.
Vývojáři třetích stran mohou do prostředí PS přidávat rutiny a zprostředkovatele. Příkazy mohou být použity skripty, které mohou být následně zabaleny do modulů. Příkazy pracují společně s rozhraním .NET API.
Obsah
BIOS info pomocí PowerShell
Get-WmiObject -Class Win32_BIOS
Výše uvedený příkaz zobrazí malou podmnožinu vlastností, které existují pro třídu Win32_BIOS. Chcete-li zobrazit seznam všech vlastností a jejich výsledků, použijte tento příkaz:
Get-WmiObject -Class Win32_BIOS | Format-List *
Další třídy (-Class) pro Get-WmiObject jsou:
- CIM_BIOSElement
- CIM_BIOSFeature
- CIM_BIOSFeaturedBIOSElements
- CIM_BIOSLoadedlnNV
- CIM_VideoBIOSElemnt
- CIM_VideoBIOSFeatureVideoBIOSElements
- Win32_SMBIOSMemory
- Class Win32_SystemBIOS
Vyhledávač Select-String alias Grep
Vyhledat slovo v souboru (logu) nebo projektu.. S použitím filtru „hledat pouze“ v .txt -Filter + ve všech složkách -Recurse
Get-ChildItem C:\"Program Files (x86)"\Brackets -Filter *.txt -Recurse | Select-String "slovo"
Když je cesta ke složce s mezerou C:\Program Files (x86) je nutný space escape C:\„Program Files (x86)„\…
Všechny soubory s obsahem slova (výrazu) slovo nakopírova do jiné složky projekt pomocí příkazu
Get-ChildItem C:\"Program Files (x86)"\Brackets -Filter *.txt -Recurse | Select-String "slovo" | Copy-Item -Destination C:\User\ABC\projekt
Rekurzivní odstranění souborů ve složce
Následující příkaz načte každý soubor v adresáři (-Path) a odstraní jej z pevného disku.
Get-ChildItem –Path "C:\Users\Franta\Download" -Recurse -File | Remove-Item
Kopírování souboru pomocí rutiny Copy-Item
Jednoché kopírování
Copy-Item C:\User\Franta\Download\soubor.txt C:\Users\Franta\Záloha
Rekurzivní kopírování (všeho ve) obsahu složky
Copy-Item C:\User\Franta\Download\* C:\Users\Franta\Záloha\ -recurse
Kopírování souborů z více adresářů do jedné složky
Copy-Item C:\Složka\1\*, C:\Složka\2\* C:\User\Franta\Záloha
Pomocí přepínače -exclude lze nastavit vyloučení určitého typu souboru z kopírování. V příkladu je vyločení všech .txt souborů s obsahem písmen a až d.
Copy-Item C:\Složka\1\* C:\User\Franta\Záloha -recurse -exclude [a-d]*.txt
Refresh karet v prohlížeči
PowerShell skript automaticky přepíná a obnovuje otevřené karty prohlížeče. Okno musí být aktivní, to znamená na pozadí se karty přepínat ani obnovovat nebudou.
while(1 -eq 1){ $wshell=New-Object -ComObject wscript.shell; $wshell.AppActivate('Firefox'); Sleep 5; $wshell.SendKeys('^{PGUP}'); $wshell.SendKeys('{F5}'); }
Konfigurovatelné proměnné (čas prodlevy + Prohlížeč) jesou vyznačeny boldem.

Užitečné
Text Jak kopírovat soubory přes internet.
Práce se soubory v Microsoft PowerShell.