Jednou z nejvíce speciálních utilit vyvinutých společností Microsoft je Windows PowerShell, což je prostředí příkazového řádku speciálně navržené pro správce systému díky mnoha funkcím podpory.
Windows PowerShell obsahuje interaktivní výzvu a skriptovací prostředí, které lze použít buď samostatně, nebo v kombinaci s jinými skripty.
Windows PowerShell je postaven na Common Language Runtime (CLR) .NET Framework a .NET Framework, pomocí kterého přijímá a vrací objekty z .NET Framework. Tímto způsobem máme změnu v prostředí, které nám poskytuje zcela nové a moderní nástroje a metody pro konfiguraci a správu Windows.
Windows PowerShell je založen na konceptu rutiny, což je jednoduchý, jednofunkční nástroj příkazového řádku zabudovaný do prostředí Shell a bude možné použít každou rutinu samostatně nebo ve spojení s ostatními pro maximální užitek.
V edicích Windows 10 jsme zatím viděli použití Windows PowerShell s grafickým prostředím, prostřednictvím kterého plně využíváme používání rutin:
ZVĚTŠIT
Společnost Microsoft vyvinula prostřednictvím GitHub novou platformu PowerShell Core, aktuálně ve své verzi 6.0, která je kompatibilní se systémy Windows, macOS a Linux, je open source a je vytvořena pro heterogenní prostředí a hybridní cloud, čímž se zvyšuje její úroveň správy a správy .
1. Rozdíly mezi Windows PowerShell a PowerShell Core
V tomto bodě si mnozí z nás mohou klást otázku, jaký je rozdíl mezi těmito dvěma edicemi, takže Solvetic provede srovnání toho, co máme v obou utilitách.
Windows PowerShellJe to konzola známá v systémech Windows, která je již více než 10 let podporou správců vedle příkazového řádku. Některé z jeho charakteristik jsou:
- Vzhledem ke své závislosti na .NET Framework je Windows PowerShell k dispozici pouze v operačních systémech Windows.
- Windows PowerShell začíná jako powershell.exe
- K dosud vydaným verzím Windows PowerShell patří 1.0, 2.0, 3.0, 4.0, 5.0 a 5.1.
- Windows PowerShell je k dispozici jako integrovaná součást klienta Windows a Windows Server.
- Ve Windows PowerShell 5.0 nebo 5.1 je $ PSVersionTable.PSEdition nastaveno na Desktop.
- Jakékoli použití funkcí založených na .NET, jako jsou rutiny C #, Add-Type a vyvolání statických metod .NET, je založeno na běhovém prostředí .NET Framework.
- I nadále je podporován prostřednictvím oprav kritických chyb v nejnovějších verzích Windows a Windows Server.
PowerShell CorePowerShell Core je edice PowerShell postavená na .NET Core, kterou můžeme také znát jako CoreCLR. Některé z jeho charakteristik jsou:
- PowerShell Core je multiplatformní a je k dispozici pro Windows, macOS a Linux díky svému designu .NET Core.
- V PowerShell Core je $ PSVersionTable.PSEdition nastaveno na Core.
- PowerShell Core začíná jako pwsh.exe ve Windows a pwsh v macOS a Linux
- Jakékoli použití funkcí založených na .NET, jako jsou rutiny C #, Add-Type a vyvolání statických metod .NET, závisí na běhovém prostředí .NET Core.
Platformy, které podporují PowerShell CoreUvedli jsme, že PowerShell Core je multiplatformní nástroj, který můžeme s plnou kompatibilitou používat v systémech, jako jsou:
- Windows 7, 8.1 a 10
- Windows Server 2008 R2, 2012 R2, 2016
- Pololetní kanál Windows Server
- Ubuntu 14.04, 16.04 a 17.04
- Debian 8.7+ a 9
- CentOS 7
- RedHat Enterprise Linux 7
- OpenSUSE 42.2
- Fedora 25, 26
- macOS 10.12+
- Arch Linux
- Kali Linux
- AppImage
- Windows ARM32 / ARM64 (ve stavu testování)
- Raspbian (Stretch) (Ve stavu testování)
Moduly dostupné v PowerShell Core 6.0Následuje seznam modulů, které můžeme použít v tomto nástroji PowerShell Core.
- CimCmdlets
- Microsoft.PowerShell.Archive
- Microsoft.PowerShell.Diagnostics
- Microsoft.PowerShell.Host
- Microsoft.PowerShell.Management
- Zabezpečení Microsoft.PowerShell
- Microsoft.PowerShell.Utility
- Microsoft.WSMan.Management
- Správa balíčků
- PowerShellGet
- PSDesiredStateConfiguration
- PSDiagnostika
- PSReadLine
2. Co je nového v PowerShell Core 6.0
S touto novou edicí PowerShell Core 6.0 budeme mít řadu nových funkcí navržených pro optimalizaci úkolů správy, řízení, podpory a automatizace, některé z nich jsou:
- Přidána podpora pro nativní globalizace příkazů na platformách Unix.
- Čím více funkcí respektuje Linux $ PAGER, což znamená, že můžeme používat zástupné znaky s binárními soubory nebo nativními příkazy.
- Zpětné lomítko je u argumentů nativního příkazu automaticky ignorováno.
- Byl přidán balíček manuálové stránky.
- V systémech macOS využívá PowerShell Core k přihlášení do systému Apple Unified Logging System nativní rozhraní API os_log. V Linuxu PowerShell používá Syslog.
- Cesty přiřazené k rutinám jsou nyní lomítko-agnostic, oba / a \ fungují jako oddělovače adresářů.
- Podpora názvů souborů a složek, které obsahují znak dvojtečky v systému Unix.
- Podpora pro úplné názvy cest nebo pomlček, které mají čárky.
- Detekuje, když se parametr -LiteralPath používá k potlačení rozšíření zástupných znaků pro navigační rutiny.
- Změněn první poziční parametr z Command na -File.
- PowerShell Core přijímá přepínač -i (nebo -Interactive) k označení interaktivního prostředí.
- Odebrány -importsystemmodules a -psconsoleFile parametry z pwsh.exe
- Chybné chybové zprávy argumentu pro konzistentní výstupní kódy -File a -Command a Unix Standards
- PowerShell Core přidává podporu pro Docker
- Protokol vzdáleného připojení PowerShell (PSRP) nyní kromě protokolu PSRP založeného na WinRM funguje také s protokolem Secure Shell (SSH)
- Výchozí kódování je UTF-8
- Podpora Ampersand
- Get-Uptime přidán do Microsoft.PowerShell.Utility
- Přidejte podporu ověřování certifikátů pro webové rutiny
- Přidána podpora pro záhlaví obsahu do webových rutin
- Inference typu byla vylepšena při dokončení tabulace na základě hodnot runtime proměnných objednávek
- Povolené použití poskytovatele systému souborů z cesty UNC
Dále uvidíme, jak nainstalovat PowerShell Core do různých edic podporovaných operačních systémů.
3. Nainstalujte PowerShell Core na Windows 10
Krok 1
Chcete -li nainstalovat nástroj PowerShell Core na klienta Windows nebo Windows Server, jako je Windows 7 SP1, Server 2008 R2 a novější, bude nutné stáhnout balíček MSI z oficiální stránky GitHub na následujícím odkazu:
Krok 2
Tam vybereme balíček, který nejlépe vyhovuje naší verzi Windows, v tomto případě stáhneme balíček win-x64. Po stažení dvakrát klikneme na instalační program a budeme postupovat podle pokynů:
Krok 3
Klikněte na „Další“ a přijmeme licenční podmínky:
Krok 4
Znovu klikneme na Dále a nyní definujeme cestu, kam má být v prostředí Windows 10 nainstalován PowerShell Core:
Krok 5
V dalším okně můžeme spustit proces instalace nástroje:
Krok 6
Po instalaci uvidíme následující:
Krok 7
Můžeme zavřít průvodce a přistupovat k PowerShell Core z nabídky Start:
Krok 8
Jakmile souhlasíme, můžeme pracovat s PowerShell Core podle aktuálních potřeb správy:
ZVĚTŠIT
4. Nainstalujte PowerShell Core na Linux
V prostředích Linux je PowerShell Core kompatibilní s následujícími distribucemi:
- Ubuntu 14.04
- Ubuntu 16.04
- Ubuntu 17.04
- Debian 8
- Debian 9
- CentOS 7
- Red Hat Enterprise Linux (RHEL) 7
- OpenSUSE 42.2
- Fedora 25
- Fedora 26
- Arch Linux
- Linux AppImage
V tomto příkladu použijeme Ubuntu 17.04, ale Solvetic vysvětlí postup pro ostatní distribuce Linuxu.
Krok 1
V případě Ubuntu 17.04 nejprve importujeme klíče z úložiště GPG spuštěním následujícího příkazu:
stočit https://packages.microsoft.com/keys/microsoft.asc | sudo apt -key add -
ZVĚTŠIT
Krok 2
Poté provedeme následující řádek pro registraci úložiště Ubuntu u společnosti Microsoft:
stočit https://packages.microsoft.com/config/ubuntu/17.04/prod.list | sudo tee /etc/apt/sources.list.d/microsoft.list
ZVĚTŠIT
Krok 3
Později aktualizujeme seznam balíčků:
sudo apt-get update
ZVĚTŠIT
Krok 4
Nainstalujeme PowerShell Core spuštěním následujícího řádku:
sudo apt -get install -y powerhell
ZVĚTŠIT
Krok 5
Po instalaci spustíme PowerShell Core s následujícím příkazem:
pwsh
ZVĚTŠIT
Krok 6
Nyní můžeme s PowerShell provádět běžné akce správy:
ZVĚTŠIT
Krok 7
Můžeme vidět příslušné výsledky:
ZVĚTŠIT
Krok 8
Kromě tohoto kroku je dalším způsobem, jak nainstalovat PowerShell v Ubuntu 17.04, stáhnout balíček „powershell_6.0.0-rc-1.ubuntu.17.04_amd64.deb“ ze stránky GitHub uvedené v horní části a poté spustit následující řádky:
sudo dpkg -i powershell_6.0.0-rc-1.ubuntu.17.04_amd64.deb sudo apt-get install -fKrok 9
Chcete -li odinstalovat PowerShell Core v Ubuntu 17.04, spustíme následující příkaz:
sudo apt-get remove powershellKrok 10
Nyní uvidíme příkazy, které se mají použít v jiných distribucích Linuxu.
Ubuntu 16.04 / 16.10
stočit https://packages.microsoft.com/keys/microsoft.asc | sudo apt -key add - (import GPG klíčů) curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/microsoft.list (registrace úložiště Ubuntu u Microsoftu) sudo apt-get update (aktualizační balíčky) sudo apt-get install -y powershell (instalace prostředí PowerShell) pwsh (PowerShell Core Home )Alternativně si můžeme stáhnout balíček „powershell_6.0.0-rc-1.ubuntu.16.04_amd64.deb“ z oficiálních webových stránek a poté spustit následující řádky:
sudo dpkg -i powershell_6.0.0-rc-1.ubuntu.16.04_amd64.deb sudo apt-get install -fChcete -li odinstalovat PowerShell Core, spustíme:
sudo apt-get remove powershell
Debian 9V tomto případě spustíme následující příkazy k instalaci systémových komponent:
sudo apt-get update sudo apt-get install curl gnupg apt-transport-httpsPoté importujeme veřejné klíče GPG:
stočit https://packages.microsoft.com/keys/microsoft.asc | sudo apt -key add -Registrujeme produkt společnosti Microsoft:
sudo sh -c 'echo "deb [arch = amd64] https://packages.microsoft.com/repos/microsoft-debian-stretch-prod stretch main"> /etc/apt/sources.list.d/microsoft.list 'Aktualizujeme produkty:
sudo apt-get updateInstalujeme PowerShell Core:
sudo apt -get install -y powerhellSpouštíme nástroj:
PwshStejně jako předchozí distribuce si můžeme stáhnout balíček „powershell_6.0.0-rc-1.debian.9_amd64.deb“ a poté spustit následující:
sudo dpkg -i powershell_6.0.0-rc-1.debian.9_amd64.deb sudo apt-get install -fChcete -li odinstalovat PowerShell Core, spustíme:
sudo apt-get remove powershell
CentOS 7V případě CentOS 7 nejprve zaregistrujeme úložiště RedHat:
stočit https://packages.microsoft.com/config/rhel/7/prod.repo | sudo tee /etc/yum.repos.d/microsoft.repoPokračujeme v instalaci PowerShell Core:
sudo yum install -y powershellSpouštíme nástroj:
pwshVolitelně můžeme stáhnout balíček „powershell-6.0.0_rc-1.rhel.7.x86_64.rpm“ z oficiálních webových stránek a poté spustit:
sudo yum nainstalovat powershell-6.0.0_rc-1.rhel.7.x86_64.rpmNebo jej můžeme nainstalovat přímo pomocí následujícího řádku:
sudo yum install https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-rc/powershell-6.0.0_rc-1.rhel.7.x86_64.rpmAbychom to odstranili, provedeme následující:
sudo yum odebrat powerhell
RedHat 7Pokud jsme uživateli RedHat, nejprve registrujeme úložiště RedHat:
stočit https://packages.microsoft.com/config/rhel/7/prod.repo | sudo tee /etc/yum.repos.d/microsoft.repoPoté nainstalujeme PowerShell Core následujícím příkazem:
sudo yum install -y powershellSpouštíme nástroj:
pwshDalší alternativou je stáhnout balíček „powershell-6.0.0_rc-1.rhel.7.x86_64.rpm“ a poté spustit:
sudo yum nainstalovat powershell-6.0.0_rc-1.rhel.7.x86_64.rpmNebo přímo:
sudo yum install https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-rc/powershell-6.0.0_rc-1.rhel.7.x86_64.rpmMůžeme odstranit PowerShell Core spuštěním:
sudo yum odebrat powerhell
Fedora 26V případě Fedory 26 je prvním krokem registrace podpisového klíče společnosti Microsoft:
sudo rpm --import https://packages.microsoft.com/keys/microsoft.ascPoté zaregistrujeme úložiště RedHat:
stočit https://packages.microsoft.com/config/rhel/7/prod.repo | sudo tee /etc/yum.repos.d/microsoft.repoAktualizujeme seznam produktů:
aktualizace sudo dnfInstalujeme systémové komponenty:
sudo dnf install compat-openssl10Pokračujeme v instalaci PowerShell Core:
sudo dnf install -y powershellSpustíme nástroj:
pwshDruhou metodou je stáhnout balíček „powershell-6.0.0_rc-1.rhel.7.x86_64.rpm“ a poté provést spuštění následujících řádků:
sudo dnf aktualizovat sudo dnf nainstalovat kompatibilní-openssl10 sudo dnf nainstalovat powershell-6.0.0_rc-1.rhel.7.x86_64.rpmK odebrání jádra PowerShell ve Fedoře 26 použijeme následující řádek:
sudo dnf odstranit PowerShell
Máme tedy různé možnosti pro prostředí Linux.
5. Nainstalujte si PowerShell Core macOS High Sierra
V případě macOS High Sierra máme dvě možnosti instalace PowerShell Core.
Krok 1
První používá HomeBrew, což je správce balíčků pro macOS, v případě, že nemáme HomeBrew, můžeme jej nainstalovat spuštěním následujícího řádku v terminálu macOS High Sierra.
/usr/bin/ruby -e "$ (curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"Krok 2
Jakmile je HomeBrew nainstalován, spustíme následující řádek:
vařit kohoutek sud / sud
ZVĚTŠIT
Krok 3
Cask je nástroj, který nám umožňuje nainstalovat další balíčky na macOS. Po instalaci spustíme následující řádek pro instalaci PowerShell Core:
vařit sud nainstalovat powerhell
ZVĚTŠIT
Krok 4
Zadáme heslo a počkáme, až proces stahování skončí:
ZVĚTŠIT
Krok 5
Alternativně si můžeme stáhnout balíček powershell-6.0.0-rc-osx.10.12-x64.pkg z oficiálních webových stránek a po stažení dvakrát klikneme na místo, kde se zobrazí následující průvodce:
Krok 6
Tam klikneme na Pokračovat a budeme postupovat podle kroků průvodce:
Krok 7
Pokud nechceme použít grafického asistenta, můžeme terminál použít spuštěním následujícího příkazu:
sudo installer -pkg powershell-6.0.0-rc-osx.10.12-x64.pkg -target /Krok 8
Po instalaci můžeme spustit příkaz pwsh pro přístup k jádru PowerShell:
Krok 9
Tam provedeme provedení běžných příkazů pro správu:
ZVĚTŠIT
Krok 10
K odinstalování PowerShell Core v macOS High Sierra můžeme použít jednu z následujících možností:
brew cask odinstalovat powershell sudo rm -rf / usr / local / bin / pwsh / usr / local / microsoft / powershellJak vidíme, PowerShell Core je dynamický, jednoduchý a výkonný nástroj, který nám pomůže provádět všechny druhy úkolů podpory v dnes nejpoužívanějších operačních systémech.