Что такое и как установить PowerShell Core 6.0 в Windows, macOS или Linux

{title}1. Различия между Windows PowerShell и PowerShell Core2. Что нового в PowerShell Core 6.03. Установите PowerShell Core в Windows 10.4. Установите PowerShell Core в Linux.5. Установите PowerShell Core macOS High Sierra.

Одной из самых специальных утилит, разработанных Microsoft, является Windows PowerShell, которая представляет собой оболочку командной строки, разработанную специально для системных администраторов благодаря многочисленным функциям поддержки.

Windows PowerShell включает интерактивный индикатор и среду сценариев, которые можно использовать независимо или в сочетании с другими сценариями.

Windows PowerShell построена на основе Common Language Runtime (CLR) .NET Framework и .NET Framework, которая принимает и возвращает объекты из .NET Framework. Таким образом, у нас есть изменение в среде, которая дает нам инструменты и методы. Совершенно новые и современные для администрирования и настройки Windows.

Windows PowerShell основана на концепции командлета, который представляет собой простой однофункциональный инструмент командной строки, интегрированный в оболочку, и каждый командлет можно будет использовать отдельно или в сочетании с другими для получения максимальной выгоды.

До сих пор в выпусках Windows 10 мы видели использование Windows PowerShell с графической средой, в которой мы максимально использовали использование командлетов:

Что ж, Microsoft разработала через GitHub новую платформу PowerShell Core, в настоящее время ее версию 6.0, которая совместима с системами Windows, macOS и Linux с открытым исходным кодом и создана для гетерогенных сред и гибридного облака, что повысило уровень управления и администрирования. .

1. Различия между Windows PowerShell и PowerShell Core

На этом этапе многие могут задаться вопросом, чем отличаются эти две редакции, ну, TechnoWikis проведет сравнение того, что есть в обеих утилитах.

Windows PowerShell

Это известная в системах Windows консоль, которая уже более 10 лет поддерживается администраторами рядом с командной строкой. Некоторые из его особенностей:

  • Из-за своей зависимости от .NET Framework, Windows PowerShell доступна только в операционных системах Windows.
  • Windows PowerShell запускается как powershell.exe
  • Опубликованные на данный момент версии Windows PowerShell включают 1.0, 2.0, 3.0, 4.0, 5.0 и 5.1.
  • Windows PowerShell доступна как интегрированный компонент в клиенте Windows и Windows Server.
  • В Windows PowerShell 5.0 или 5.1 для $ PSVersionTable.PSEdition задано значение Рабочий стол.
  • Любое использование функциональных возможностей .NET, таких как командлеты C #, Add-Type и вызов статических методов .NET, основано на среде выполнения .NET Framework.
  • Он остается совместимым благодаря исправлениям критических ошибок в последних версиях Windows и Windows Server.

Ядро PowerShell

PowerShell Core - это версия PowerShell, построенная на .NET Core, которую мы также можем назвать CoreCLR. Некоторые из его особенностей:

  • PowerShell Core - кроссплатформенный, он доступен в Windows, macOS и Linux благодаря дизайну .NET Core.
  • В PowerShell Core для $ PSVersionTable.PSEdition установлено значение Core.
  • PowerShell Core запускается как pwsh.exe в Windows и pwsh в macOS и Linux.
  • Любое использование функциональных возможностей .NET, таких как командлеты C #, Add-Type и вызов статических методов .NET, зависит от времени выполнения .NET Core.

Платформы, поддерживающие PowerShell Core

Мы указали, что PowerShell Core - это мультиплатформенная утилита, которую мы можем использовать с полной совместимостью в таких системах, как:

  • Windows 7, 8.1 и 10
  • Windows Server 2008 R2, 2012 R2, 2016
  • Полугодовой канал Windows Server
  • Ubuntu 14.04, 16.04 и 17.04
  • Debian 8.7+ и 9
  • CentOS 7
  • RedHat Enterprise Linux 7
  • OpenSUSE 42.2
  • Fedora 25, 26
  • macOS 10.12+
  • Linux arch
  • Kali Linux
  • AppImage
  • Windows ARM32 / ARM64 (в состоянии тестирования)
  • Распбиан (Растяжка) (При наличии доказательств)

Модули, доступные в PowerShell Core 6.0

Ниже приводится список модулей, которые мы можем использовать в этой утилите PowerShell Core.

  • CimCmdlets
  • Microsoft.PowerShell.Archive
  • Microsoft.PowerShell.Diagnostics
  • Microsoft.PowerShell.Host
  • Microsoft.PowerShell.Management
  • Microsoft.PowerShell.Security
  • Microsoft.PowerShell.Utility
  • Microsoft.WSMan.Management
  • Управление пакетами
  • PowerShellGet
  • PSDesiredStateConfiguration
  • ПДиагностика
  • PSReadLine

2 . Что нового в PowerShell Core 6.0

В этой новой версии PowerShell Core 6.0 у нас будет ряд нововведений, предназначенных для оптимизации задач администрирования, контроля, поддержки и автоматизации. Вот некоторые из них:

  • Добавлена ​​поддержка подстановки собственных команд на платформах Unix.
  • Большая функциональность соответствует $ PAGER в Linux, что означает, что мы можем использовать подстановочные знаки с двоичными файлами или собственными командами.
  • Обратная косая черта автоматически пропускается, когда речь идет о собственных аргументах команды.
  • Был добавлен пакет man-страницы.
  • В системах macOS PowerShell Core использует собственные API-интерфейсы os_log для входа в единую систему регистрации Apple. В Linux PowerShell использует системный журнал.
  • Маршруты, назначенные командлетам, теперь не зависят от косой черты, и / и функционируют как разделители каталогов.
  • Поддержка имен файлов и папок, содержащих символ двоеточия в Unix.
  • Поддержка полных имен сценариев или путей с запятыми.
  • Обнаруживает, когда параметр -LiteralPath используется для подавления раскрытия подстановочных знаков для командлетов навигации.
  • Изменен первый позиционный параметр команды на -File.
  • PowerShell Core принимает переключатель -i (или -Interactive) для обозначения интерактивной оболочки.
  • -Importsystemmodules и -psconsoleFile параметры были удалены из pwsh.exe
  • Сообщения об ошибках недопустимого аргумента для -File и -Command и коды выхода, соответствующие стандартам Unix
  • PowerShell Core добавляет поддержку Docker
  • Протокол удаленного подключения PowerShell (PSRP) теперь работает с протоколом Secure Shell (SSH) в дополнение к PSRP на основе WinRM.
  • Кодировка по умолчанию - UTF-8.
  • Поддержка амперсанда
  • Get-Uptime добавлен в Microsoft.PowerShell.Utility
  • Добавить поддержку проверки подлинности сертификата для веб-командлетов
  • Добавлена ​​поддержка заголовков содержимого для веб-командлетов.
  • Улучшен вывод типа при автозавершении табуляции на основе значений переменных времени выполнения заказа.
  • Включено использование поставщика файловой системы из пути UNC

Далее мы увидим, как установить PowerShell Core в разные версии совместимых операционных систем.

3. Установите PowerShell Core в Windows 10

Шаг 1

Чтобы установить утилиту PowerShell Core на клиент Windows или Windows Server, такой как Windows 7 SP1, Server 2008 R2 и более поздние версии, необходимо загрузить пакет MSI с официальной страницы GitHub по следующей ссылке:

Github

Шаг 2

Там мы выберем пакет, который лучше всего подходит для нашей версии Windows, в этом случае мы загрузим пакет win-x64. После загрузки мы дважды щелкнем по установщику и следуем инструкциям:

Шаг 3

Нажмите «Далее», и мы примем условия лицензии:

Шаг 4

Снова нажмите на Далее и теперь мы определяем путь, по которому PowerShell Core должен быть установлен в Windows 10:

Шаг 5

В следующем окне мы можем начать процесс установки утилиты:

ШАГ 6

После установки мы увидим следующее:

Шаг 7.

Мы можем закрыть мастер и получить доступ к PowerShell Core из меню «Пуск»:

Шаг 8

Получив доступ, мы можем работать с PowerShell Core в соответствии с текущими потребностями управления:

4. Установите PowerShell Core в Linux

В среде Linux PowerShell Core поддерживает следующие дистрибутивы:

  • 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
  • Linux arch
  • Linux AppImage

В этом примере мы будем использовать Ubuntu 17.04, но TechnoWikis объяснит процесс для других дистрибутивов Linux.

Шаг 1

В случае Ubuntu 17.04 сначала мы импортируем ключи репозитория GPG, выполнив следующую команду:

 curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key добавить - 

Шаг 2

Затем мы запустим следующую строку, чтобы зарегистрировать репозиторий Ubuntu в Microsoft:

 curl https://packages.microsoft.com/config/ubuntu/17.04/prod.list | sudo tee /etc/apt/sources.list.d/microsoft.list 

Шаг 3

Позже мы обновим список пакетов:

 sudo apt-get update 

Шаг 4

Мы устанавливаем PowerShell Core, выполнив следующую строку:

 sudo apt-get install -y powershell 

Шаг 5

После установки мы запускаем PowerShell Core с помощью следующей команды:

 pwsh 

ШАГ 6

Теперь мы можем выполнять обычные действия по управлению с помощью PowerShell:

Шаг 7.

Мы видим соответствующие результаты:

Шаг 8

В дополнение к этому шагу, еще один способ установить PowerShell в Ubuntu 17.04 - загрузить пакет "powershell_6.0.0-rc-1.ubuntu.17.04_amd64.deb" со страницы GitHub, указанной вверху, а затем выполнить следующие строки:

 sudo dpkg -i powershell_6.0.0-rc-1.ubuntu.17.04_amd64.deb sudo apt-get install -f 

Шаг 9

Чтобы удалить PowerShell Core в Ubuntu 17.04, мы запускаем следующую команду:

 sudo apt-get удалить powershell 

Шаг 10.

Теперь мы увидим команды для использования в других дистрибутивах Linux.

Ubuntu 16.04 / 16.10

 curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key add - (импорт ключей GPG) curl https://packages.microsoft.com/config/ubuntu/16.04/prod.list | sudo tee /etc/apt/sources.list.d/microsoft.list (регистрация репозитория Ubuntu в Microsoft) sudo apt-get update (обновление пакета) sudo apt-get install -y powershell (установка ядра PowerShell) pwsh (запуск ядра PowerShell) 
В качестве альтернативы мы можем загрузить пакет "powershell_6.0.0-rc-1.ubuntu.16.04_amd64.deb" с официального сайта, а затем запустить следующие строки:
 sudo dpkg -i powershell_6.0.0-rc-1.ubuntu.16.04_amd64.deb sudo apt-get install -f 
Чтобы удалить PowerShell Core, мы запускаем:
 sudo apt-get удалить powershell 

Debian 9

В этом случае мы выполним следующие команды для установки компонентов системы:

 sudo apt-get update sudo apt-get install curl gnupg apt-transport-https 
Затем мы импортируем открытые ключи GPG:
 curl https://packages.microsoft.com/keys/microsoft.asc | sudo apt-key добавить - 
Регистрируем продукт 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 ' 
Обновляем товары:
 sudo apt-get update 
Устанавливаем PowerShell Core:
 sudo apt-get install -y powershell 
Запускаем утилиту:
 Pwsh 
Как и в предыдущем дистрибутиве, мы можем загрузить пакет «powershell_6.0.0-rc-1.debian.9_amd64.deb», а затем выполнить следующее:
 sudo dpkg -i powershell_6.0.0-rc-1.debian.9_amd64.deb sudo apt-get install -f 
Чтобы удалить PowerShell Core, мы запускаем:
 sudo apt-get удалить powershell 

CentOS 7

В случае CentOS 7 мы сначала зарегистрируем репозиторий RedHat:

 curl https://packages.microsoft.com/config/rhel/7/prod.repo | sudo tee /etc/yum.repos.d/microsoft.repo 
Приступаем к установке PowerShell Core:
 sudo yum install -y powershell 
Запускаем утилиту:
 pwsh 
При желании мы можем загрузить пакет "powershell-6.0.0_rc-1.rhel.7.x86_64.rpm" с официального сайта, а затем запустить:
 sudo yum установить powershell-6.0.0_rc-1.rhel.7.x86_64.rpm 
Или мы можем установить его напрямую, используя следующую строку:
 sudo yum install https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-rc/powershell-6.0.0_rc-1.rhel.7.x86_64.rpm 
Для его устранения выполняем следующее:
 sudo yum удалить powershell 

Redhat 7

Если мы являемся пользователями RedHat, мы сначала зарегистрируем репозиторий RedHat:

 curl https://packages.microsoft.com/config/rhel/7/prod.repo | sudo tee /etc/yum.repos.d/microsoft.repo 
Затем мы установим PowerShell Core с помощью следующей команды:
 sudo yum install -y powershell 
Запускаем утилиту:
 pwsh 
Другой альтернативой является загрузка пакета «powershell-6.0.0_rc-1.rhel.7.x86_64.rpm», а затем запуск:
 sudo yum установить powershell-6.0.0_rc-1.rhel.7.x86_64.rpm 
Или напрямую:
 sudo yum install https://github.com/PowerShell/PowerShell/releases/download/v6.0.0-rc/powershell-6.0.0_rc-1.rhel.7.x86_64.rpm 
Мы можем удалить PowerShell Core, запустив:
 sudo yum удалить powershell 

Fedora 26

В случае Fedora 26 первым шагом является регистрация ключа подписи Microsoft:

 sudo rpm --import https://packages.microsoft.com/keys/microsoft.asc 
Затем зарегистрируем репозиторий RedHat:
 curl https://packages.microsoft.com/config/rhel/7/prod.repo | sudo tee /etc/yum.repos.d/microsoft.repo 
Обновляем список товаров:
 sudo dnf update 
Устанавливаем компоненты системы:
 sudo dnf установить compat-openssl10 
Приступаем к установке PowerShell Core:
 sudo dnf install -y powershell 
Запускаем утилиту:
 pwsh 
Другой способ - загрузить пакет "powershell-6.0.0_rc-1.rhel.7.x86_64.rpm" и затем выполнить следующие строки:
 sudo dnf update sudo dnf install compat-openssl10 sudo dnf install powershell-6.0.0_rc-1.rhel.7.x86_64.rpm 
Чтобы удалить PowerShell Core в Fedora 26, мы будем использовать следующую строку:
 sudo dnf удалить powershell 

Таким образом, у нас есть разные варианты для сред Linux.

5. Установите PowerShell Core macOS High Sierra

В случае macOS High Sierra у нас есть два варианта установки PowerShell Core.

Шаг 1

Первый - это использование HomeBrew, который является менеджером пакетов для macOS, в случае отсутствия HomeBrew мы можем установить его, запустив следующую строку в терминале macOS High Sierra.

 / usr / bin / ruby ​​â € ‹â €‹ -e "$ (curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)" 

Шаг 2

После установки HomeBrew мы выполним следующую строку:

 варочный кран бочка / бочка 

Шаг 3

Cask - это утилита, которая позволяет нам устанавливать дополнительные пакеты на macOS. После установки мы запустим следующую строку, чтобы установить PowerShell Core:

 заваривать бочку установить PowerShell 

Шаг 4

Мы введем свой пароль и надеемся, что процесс загрузки завершится:

Шаг 5

В качестве альтернативы мы можем загрузить пакет powershell-6.0.0-rc-osx.10.12-x64.pkg с официального сайта, и после загрузки мы дважды щелкнем по месту, где будет развернут следующий мастер:

ШАГ 6

Там нажимаем Продолжить и будем следовать шагам помощника:

Шаг 7.

Если мы не хотим использовать графический помощник, мы можем использовать терминал, выполнив следующую команду:

 установщик sudo -pkg powershell-6.0.0-rc-osx.10.12-x64.pkg -target / 

Шаг 8

После установки мы можем выполнить команду pwsh для доступа к PowerShell Core:

Шаг 9

Там мы осуществим выполнение обычных команд управления:

Шаг 10.

Чтобы удалить PowerShell Core в macOS High Sierra, мы можем использовать один из следующих вариантов:

 brew cask удалить powershell sudo rm -rf / usr / local / bin / pwsh / usr / local / microsoft / powershell 
Как мы видим, PowerShell Core - это динамичная, простая и мощная утилита, которая поможет нам выполнять все виды задач поддержки в наиболее часто используемых сегодня операционных системах.