Většina z nás preferuje PowerShell kvůli jeho automatizačním schopnostem. Je to shell příkazového řádku s plně vyvinutým skriptovacím jazykem. K automatizaci administrativních úloh systému Windows a dalších kompatibilních operačních systémů můžete použít vestavěné rutiny nebo napsat svůj vlastní skript. Umožňuje vám dělat vše, co můžete dělat s aplikacemi GUI a další.
Zvládnutí funkčnosti a flexibility PowerShellu však vyžaduje strmou křivku učení. Pokud s PowerShellem teprve začínáte, zde jsou základní příkazy, které se můžete naučit ovládat tento skriptovací jazyk z dlouhodobého hlediska.
1. Získejte pomoc
Získejte pomoc, jak název napovídá, je součástí integrovaného systému nápovědy PowerShellu. Pomůže vám najít potřebné informace pro příkaz, koncepty a funkce, identifikovat alias, skripty a další.
Chcete-li získat nápovědu pro rutinu PowerShell, musíte použít rutinu Get-help následovanou názvem rutiny. Chcete-li například zobrazit synopse a syntaxe spojené s rutinou get-process, zadejte:
Dostat-PomocDostat-Proces
Tento příkaz může číst jak nápovědu založenou na komentářích, tak nápovědu založenou na XML, kterou poskytuje autor funkce.
Případně můžete použít Získejte nápovědu - online příkaz k získání nápovědy pro rutinu PowerShell online. Chcete-li například zobrazit online dokumentaci společnosti Microsoft pro Získejte obsah cmdlet, typ:
Dostat-PomocDostat-Obsah -online
2. Get-Process
The Get-Process vám pomůže načíst a zobrazit seznam všech aktivních systémových procesů s jejich identifikátory (ID). Můžete jej použít jako efektivní alternativa ke Správci úloh systému Windows pro zobrazení, zastavení a restartování systémových procesů.
Pokud například potřebujete zastavit proces GameBar, musíte nejprve najít ID procesu, které je s ním spojeno. Takže napište:
Get-Process
Tento příkaz zobrazí všechny běžící systémové procesy. Dále najděte ID spojené s procesem, který chcete zastavit. Chcete-li proces zastavit, zadejte:
Get-Process -ID 20496 | Stop-Proces
Tady -ID 20496 je ID procesu (GameBar), který chcete zastavit.
3. Start-Process
Můžete použít Start-Process cmdlet v prostředí PowerShell ke spuštění jednoho nebo více procesů v místním počítači. Chcete-li použít rutinu, zadejte Start-Process následovaný názvem procesu. Pokud například chcete zahájit nový proces poznámkového bloku, zadejte:
Start-Zpracovat poznámkový blok
Kromě toho můžete použít parametry Start-Process k určení možností. Pokud například potřebujete spustit proces jako správce, zadejte:
Start-Process -FilePath "poznámkový blok" -Sloveso runAs
4. Get-Command
The Get-Command umožňuje zobrazit všechny příkazy prostředí PowerShell nainstalované v počítači. Podobně jako u Get-Help můžete použít příkaz Get-Command následovaný vyhledávacím dotazem k nalezení příkazů pro konkrétní funkci.
Vzhledem k tomu, že příkaz Get-Command zobrazuje všechny příkazy, můžete zadat parametry pro vyhledání funkcí s konkrétním názvem a typem příkazu. Chcete-li například najít rutiny (CommandTypes), které začínají na A (Název), zadejte:
Get-Command -Name A* -CommandType cmdlet
Případně napište Get-Help Get-Command -Příklady pro zobrazení dalších příkladů.
5. Get-Service
The Get-Service cmdlet umožňuje zobrazit stav počítače a seznam služeb. Ve výchozím nastavení vrací příkaz Get-Service všechny (zastavené a spuštěné) služby.
Parametry můžete použít k určení a vyhledání služeb v závislosti na jejich stavu, názvu a závislých službách. Chcete-li například zobrazit všechny služby začínající názvem Win, zadejte:
Get-Service - Name "Vyhrát*"
6. Get-ChildItem
PowerShell můžete použít k prohledávání adresářů. The Get-ChildItem command je užitečná rutina, která umožňuje vyhledávat složky a soubory a rychle provádět vyhledávání podle obsahu bez použití Průzkumníka souborů.
Chcete-li zobrazit všechny složky nejvyšší úrovně v adresáři C:\, zadejte:
Get-ChildItem "C:\"
Kromě toho použijte -Cesta parametr pro zobrazení konkrétní složky, podsložek a obsahu. Chcete-li například zobrazit všechny podsložky a soubory ve složce Programs Files, zadejte:
Get-ChildItem -Cesta "C:\Program Files"
Navíc použijte -Rekurze parametr pro zobrazení všech souborů v zadané složce a -Název parametr pro zobrazení názvů položek v adresáři.
Get-ChildItem -Cesta "C:\Program Files\Fodler_Name" -Rekurze | Vyberte Celé jméno
Ve výše uvedeném příkazu nahradit podsložku s názvem složky pro zobrazení jejího obsahu.
7. Kopírovat položku
The Kopírovat položku cmdlet umožňuje kopírovat a vkládat soubory a složky a jejich obsah do jiného adresáře. Chcete-li kopírovat soubory a složky, zadejte Kopírovat položku následuje zdroj -Cesta, -Destinace parametr a cílová adresa. Například kopírovat E:\Složka1 a jeho obsah E:\Složka2, typ:
Kopírovat položku "E:\Složka1" -Destinace "E:\Složka2" -Rekurze
Všimněte si, že -Rekurze parametr ve výše uvedeném příkazu je zodpovědný za přesun veškerého obsahu složky. Bez něj PowerShell zkopíruje pouze složku nejvyšší úrovně (Folder1) a soubory určené v příkazu.
8. Přesunout položku
Podobně k přesunutí položky můžete použít Přesunout položku cmdlet. Chcete-li například přesunout složku, soubory, podsložky a veškerý jejich obsah do zadaného cíle, zadejte:
Move-Item -Path "E:\Složka1" -Destinace "E:\Složka2"
9. Odebrat položku
The Odebrat položku cmdlet umožňuje odstranit soubory, složky, funkce a další datové typy ze zadaného adresáře. Chcete-li například odstranit soubor Test.txt ve složce E:\Folder1, zadejte:
Odebrat položkuE:\Složka1\Test.txt
10. Získejte obsah
The Získejte obsah cmdlet umožňuje zobrazit obsah položky položky bez použití textového editoru. Chcete-li například načíst obsah souboru Test.txt, zadejte:
Získejte obsah "E:\Složka1\Test.txt"
Můžete dále určit délku obsahu, který se má zobrazit, pomocí -Celkový součet parametr.
11. Clear-Content
Můžete použít Clear-Content cmdlet k odstranění obsahu zadaného souboru bez odstranění samotného souboru. Užitečné pro automatizaci úloh, kde máte pevně zakódovaný název souboru, ale chcete mít čistý soubor při každém spuštění skriptu.
Chcete-li příkaz otestovat, vytvořte textový soubor s nějakým obsahem. Dále zadejte:
Clear-Content -Path "E:\Složka1\Test1.txt"
Tím se odstraní obsah souboru, aniž by byl smazán soubor.
12. Set-ExecutionPolicy
Výchozí zásada spouštění v prostředí PowerShell je nastavena na možnost Omezené. Tím se zabrání spouštění škodlivých skriptů v prostředí PowerShell. Když však spustíte místní skript PowerShell, můžete se setkat s tím, že spouštěcí skript je při této systémové chybě deaktivován.
The Set-ExecutionPolicy rutiny umožňují změnit úrovně zabezpečení pro provádění skriptů. Chcete-li znát své aktuální zásady provádění, zadejte:
Get-ExecutionPolicy
Pokud potřebujete spustit nepodepsaný skript, do výzvy PowerShellu se zvýšenými oprávněními zadejte:
Soubor-ExecutionPolicy RemoteSigned
Mezi další platné hodnoty Set-ExecutionPolicy patří Omezený, Vše podepsáno, a Neomezený.
13. Set-Location
Ve výchozím nastavení používá PowerShell C:\Users\Username jako výchozí pracovní adresář. The Set-Location cmdlet umožňuje nastavit aktuální pracovní adresář do určeného umístění. Užitečné, pokud chcete spustit skript nebo příkaz z určitého umístění, aniž byste museli pokaždé zadávat cestu.
Například nastavit C:\Users\Username\Documents jako aktuální pracovní adresář zadejte:
Set-Location "C:\Users\usrename\Documents"
Toto je dočasné opatření, protože PowerShell po restartu resetuje pracovní adresář zpět do výchozího adresáře.
14. Export-CSV
Pokud chcete exportovat a prezentovat výstup PowerShellu organizovanějším způsobem, můžete použít Export-CSV cmdlet. Vezme výstupní soubor pro zadaný příkaz a převede jej na soubor CSV.
Chcete-li příkaz otestovat, vyzkoušejte následující příkaz:
Get-Process | Export-CSV PSprocess.csv
Výše uvedený příkaz vytvoří a psporcess.csv soubor se všemi daty aktivních procesů.
15. Převést do HTML
Pokud byste raději vytvořili HTML sestavu, můžete použít Převést do HTML Rutina. Chcete-li vytvořit zprávu HTML pro všechny běžící procesy na vašem počítači, zadejte:
Get-Process | Převést do HTML > PSprocess.html
Ve výše uvedeném příkazu psprocess je název exportovaného souboru a HTML je rozšíření. K exportovanému souboru HTML můžete přistupovat v aktuálním pracovním adresáři umístěném na C:\Users\uživatelské jméno.
16. Získejte historii
Můžete použít Nahoru-dolů klávesu se šipkou pro procházení naposledy provedených příkazů v PowerShellu. Chcete-li však zobrazit seznam všech nedávno provedených příkazů ve vaší aktuální relaci najednou, můžete použít Získejte historii cmdlet.
Zobrazí seznam všech naposledy provedených příkazů s jejich ID. Užitečné, pokud chcete zobrazit úplný kontext dříve provedených příkazů. Chcete-li to provést, zadejte:
Get-History ID | fl
Chcete-li například zobrazit podrobnosti provádění, jako je stav, čas začátku a konce a trvání třetího příkazu, zadejte:
dostat-historie 3 | fl,
Chcete-li znovu spustit libovolný příkaz ze seznamu, zadejte:
Invoke-History následuje příkaz id
Například, typ Vyvolat historii 3 pro opětovné spuštění dříve provedeného příkazu bez jeho opětovného psaní.
Navíc použijte Smazat historii pro vymazání historie aktuální relace.
Nyní, když máte základní představu o příkazech PowerShellu, pokračujte a prozkoumejte našeho průvodce nejlepšími Cmdlets PowerShell pro zlepšení vašich dovedností správce Windows. Zde se můžete naučit pracovat s daty pomocí rutin, formátování tabulek a seznamů a rychlý přehled příkazu Get-Member.
Příkazy PowerShellu pro zjednodušení vašich úkolů
PowerShell je známý svými automatizačními schopnostmi. To vám může pomoci automatizovat stovky činností ve vaší vývojové práci, abyste ušetřili čas a zvýšili produktivitu.
Zatímco jsme pokryli pouze základní příkazy, zkuste prozkoumat syntaxi, alias a proměnné, funkce dostupné u mnoha z těchto příkazů, abyste zvládli tento vysoce účinný skriptovací jazyk.