Новые возможности powershell 7.1
Содержание:
- Требования к Microsoft .NET Framework
- Конвейер в PowerShell
- Сценарии, функции и модули в Windows PowerShell
- Полное описание
- Запуск 32-разрядной версии Windows PowerShell
- В предыдущих версиях систем
- Основные команды для PowerShell
- Шаг 1: установка
- Возможность обнаружения
- Что такое Windows PowerShell?
- Как открыть PowerShell на Windows 10: возможные способы
- Немного о PowerShell для Windows 10
- Требования к операционной системе
- Отключить PowerShell в Windows 10
- Как отключить PowerShell в Windows 10
- Политика выполнения
- 7.2.0-preview.7 — 2021-06-17
- Что делать, если он не открывается
- Инсталляция консоли PowerShell
Требования к Microsoft .NET Framework
В следующей таблице приведены требования к .NET Framework для Windows PowerShell.
Версия | Требование к .NET |
---|---|
Windows PowerShell 5.1 | Требует полную установку Microsoft .NET Framework 4.5. Windows 8.1 и Windows Server 2012 R2 включают Microsoft .NET Framework 4.5 по умолчанию. |
Windows PowerShell 5.0 | Требует полную установку Microsoft .NET Framework 4.5. Windows 8.1 и Windows Server 2012 R2 включают Microsoft .NET Framework 4.5 по умолчанию. |
Windows PowerShell 4.0 | Требует полную установку Microsoft .NET Framework 4.5. Windows 8.1 и Windows Server 2012 R2 включают Microsoft .NET Framework 4.5 по умолчанию. |
Windows PowerShell 3.0 | Требует полную установку Microsoft .NET Framework 4. Windows 8 и Windows Server 2012 содержат Microsoft .NET Framework 4.5 по умолчанию, что удовлетворяет этому требованию. |
Используйте следующие ссылки, чтобы загрузить Microsoft .NET Framework из центра загрузки Майкрософт.
Версия | Ссылка |
---|---|
.NET Framework 4.5 () | Microsoft .NET Framework 4.5 |
.NET Framework 4 () | Microsoft .NET Framework 4 (веб-установщик) |
Конвейер в PowerShell
Одной из главных возможностей Windows PowerShell является возможность использования конвейера при выполнении команд.
При этом, как Вы помните, в PowerShell командлеты работают с объектами и возвращают объекты, соответственно по конвейеру передаются также объекты.
С помощью конвейера можно выполнять сложные задачи простым и удобным способом без необходимости написания сложных алгоритмов и сценариев.
Например, давайте узнаем название самого большого файла в каталоге «C:\Windows\System32» (простой пример конвейера).
Команда
Get-ChildItem -Path "C:\Windows\System32" -File | Sort-Object length -Descending | Select-Object -First 1
Где,
- Get-ChildItem – командлет получения объектов в указанном каталоге;
- Sort-Object – командлет для сортировки объектов, в нашем случае мы сортируем по размеру файла (length -Descending);
- Select-Object – командлет выбора нужных свойств объекта, в нашем случае мы выводим стандартные поля и только самый первый объект, т.е. большой файл (параметр -First 1).
Все командлеты отделены друг от друга вертикальной чертой. Результат работы каждого командлета передается на вход другому командлету, т.е. сначала мы получаем все объекты в указанном каталоге, затем сортируем полученный результат и в заключение выбираем самый первый объект.
Сценарии, функции и модули в Windows PowerShell
Если Вы написали некий алгоритм, скорей всего Вы захотите сохранить его, для того чтобы в дальнейшем им пользоваться. В Windows PowerShell для этих целей существует механизм использования сценариев.
Суть данного механизма следующая, Вы пишите нужный Вам набор команд и сохраняете его в качестве сценария — это простой текстовый файл с расширением .PS1.
Затем, для того чтобы выполнить этот сценарий, Вы просто запускаете его в оболочке PowerShell. При этом Вам необходимо либо указать полный путь к файлу сценария, либо перейти в каталог со сценарием и вызвать его по имени.
Важно!
По умолчанию выполнение сценариев в Windows запрещено! Для того чтобы посмотреть политику выполнения сценариев выполните командлет Get-ExecutionPolicy. В результате он вернет действующую политику, например:
- Restricted – блокируется выполнение любых сценариев (значение по умолчанию);
- AllSigned – разрешено выполнение сценариев, которые имеют цифровую подпись;
- RemoteSigned – разрешено выполнение локальных сценариев, все скачанные сценарии должны иметь цифровую подпись;
- Unrestricted — разрешено выполнение любых сценариев (не рекомендуется, так как небезопасно!).
Для разрешения выполнения сценариев необходимо использовать командлет Set-ExecutionPolicy с одним из вышеперечисленных параметров.
Например, для разрешения выполнения локальных сценариев выполним следующую команду, и согласимся с внесением изменений, нажав Y.
Set-ExecutionPolicy RemoteSigned
В сценарии можно передавать параметры, делать их обязательными или задавать значение по умолчанию.
В Windows PowerShell предусмотрен механизм создания собственных функций, которые также как и встроенные командлеты можно будет использовать в оболочке PowerShell.
Для этого необходимо указать ключевое слово Function и затем в фигурных скобках {} написать алгоритм работы этой функции, т.е. набор команд (например, какая-нибудь часто используемая процедура: создать пользователя с определенными правами, очистить определенные каталоги и так далее). Потом необходимо сохранить все это в сценарий, но только уже с расширением .psm1, так как этот файл будет являться уже модулем.
Это еще не все, этот файл необходимо поместить в каталог, в котором PowerShell ищет модули. Таких каталогов несколько (специальный каталог в профиле пользователя, каталог, где установлен PowerShell), их можно посмотреть в переменных окружения PowerShell. Для этого выполните следующую команду
Get-ChildItem Env:\PSModulePath | Format-Table -AutoSize
После того как Вы поместите написанный Вами модуль в специальный каталог, Вы сможете обращаться к своим функциям как к обычным командам PowerShell.
Полное описание
В PowerShell 5,1 существует несколько выпусков PowerShell, которые выполняются в другой среде выполнения .NET. В PowerShell 6,2 существует два выпуска PowerShell:
-
рабочий стол, работающий на платформа .NET Framework. powershell 4 и ниже, а также powershell 5,1 в полнофункциональных Windows выпусках, таких как Windows Desktop, Windows server, Windows Server Core и большинство других операционных систем Windows, являются настольными выпусками.
Это исходный выпуск PowerShell. - Ядро, работающее на .NET Core. powershell 6,0 и более поздних версий, а также powershell 5,1 на некоторых Windows выпусках, таких как Windows Nano Server и Windows IoT, где платформа .NET Framework недоступен.
Поскольку выпуск PowerShell соответствует среде выполнения .NET, он является основным индикатором совместимости .NET API и модуля PowerShell. Некоторые API-интерфейсы .NET, типы или методы недоступны в обеих средах выполнения .NET, и это влияет на сценарии PowerShell и модули, зависящие от них.
Запуск 32-разрядной версии Windows PowerShell
При установке Windows PowerShell на 64-разрядном компьютере в дополнение к 64-разрядной версии устанавливается Windows PowerShell (x86) — 32-разрядная версия Windows PowerShell. При открытии Windows PowerShell по умолчанию запускается 64-разрядная версия.
Однако в некоторых случаях нужно запустить Windows PowerShell (x86) , например при использовании модуля, которому требуется 32-разрядная версия, или при удаленном подключении к 32-разрядному компьютеру.
Для запуска 32-разрядной версии Windows PowerShell воспользуйтесь любой из следующих процедур.
В Windows Server 2012 R2
- На экране Пуск щелкните Windows PowerShell (x86). Щелкните плитку Windows PowerShell x86.
- Выберите пункт Windows PowerShell (x86) в меню Сервис****диспетчера сервера.
- На рабочем столе переместите курсор в правый верхний угол, щелкните элемент Поиск , введите PowerShell x86 и выберите Windows PowerShell (x86) .
- В командной строке введите следующее:
В Windows Server 2012
- На экране Пуск введите PowerShell и выберите Windows PowerShell (x86).
- Выберите пункт Windows PowerShell (x86) в меню Сервис****диспетчера сервера.
- На рабочем столе переместите курсор в правый верхний угол, щелкните элемент Поиск , введите PowerShell и выберите Windows PowerShell (x86) .
- В командной строке введите следующее:
- На экране Пуск щелкните Windows PowerShell (x86). Щелкните плитку Windows PowerShell x86.
- Если вы используете средства удаленного администрирования сервера для Windows 8.1, можно также открыть Windows PowerShell x86 из меню Сервис диспетчера сервера. Выберите Windows PowerShell (x86).
- На рабочем столе переместите курсор в правый верхний угол, щелкните элемент Поиск , введите PowerShell x86 и выберите Windows PowerShell (x86) .
- В командной строке введите следующее:
В предыдущих версиях систем
Пакет Windows Management Framework 4.0, устанавливающий Windows PowerShell 4.0 в Windows 7, Windows Server 2008 R2 и Windows Server 2012, включает подсистему Windows PowerShell 2.0. Подсистема Windows PowerShell 2.0 включена и готова к использованию без дополнительной установки, настройки или конфигурации.
Пакет Windows Management Framework 3.0, устанавливающий Windows PowerShell 3.0 в Windows 7, Windows Server 2008 R2 и Windows Server 2008, включает подсистему Windows PowerShell 2.0. Подсистема Windows PowerShell 2.0 включена и готова к использованию без дополнительной установки, настройки или конфигурации.
Основные команды для PowerShell
В программе поддерживается огромное количество команд, применяемых к различным компонентам операционной системы Windows 10. Хорошо что есть возможность получить справку о любой команде непосредственно в окне программы Windows PowerShell. Это поможет разобраться с основными командами и принципами работы в новой среде.
- Get-Help — отображение справочных сведений о командлетах и основных понятиях. В справке описываются командлеты, функции, сценарии и модули, а также объясняются основные понятия, в том числе элементы языка Windows PowerShell.
- Update-Help — загрузка и установка файлов справки с общей папки или Интернета. После обновлений операционной системы может понадобиться обновление справки — обнаружение, скачивание и установка обновлений для модулей.
- Get-Command — вывод всех доступных функций и командлетов, с авто заполнением строки. Выбрав интересующую команду, выполните её с Get-Help для быстрого получения справки. Например, ознакомится с Get-Help Remove-AppxPackage.
Заключение
На самом деле Windows PowerShell — это очень полезная программа, которая не раз экономила нам время. Множество инструкций писались на примерах с её использованием. Но даже половина возможностей обновлённой оболочки не была задействована. О работе в ней можно написать значительно больше. Но благодаря основным командам можно ознакомиться со всеми возможностями программы.
Шаг 1: установка
Для начала нам необходима сама утилита PowerShell. Если вы работаете с Windows 10, у вас уже установлена версия PowerShell 5. Обновление Windows 10 Anniversary Update использует версию 5.1, но разница незаметна. В Windows 8 и 8.1 применяется PowerShell 4, чего тоже вполне достаточно. Установка PowerShell на Windows 7 не доставит проблем, но всё же пару лишних шагов придется сделать. В частности, нужно дополнительно установить .Net Framework. Можно установить Windows Management Framework, в состав которого входит PowerShell.
У PowerShell есть два интерфейса. Опытные пользователи могут выбрать полноценный графический интерфейс, известный как Integrated Scripting Environment (ISE). Новичкам лучше использовать консоль PowerShell, простой текстовый интерфейс в стиле командной строки Windows или даже DOS 3.2.
Для запуска PowerShell от имени администратора в Windows 10 нажмите на кнопку «Пуск» и прокрутите список приложений до Windows PowerShell. В Windows 8.1 ищите Windows PowerShell в папке System в Windows. В Windows 7 оболочка располагается в папке Accessories. В качестве обычного пользователя PowerShell можно запустить точно так же, используя левую кнопку мыши вместо правой.
В любой версии Windows можно применить поиск. Для удобства дальнейшего использования можно закрепить PowerShell на панели задач.
Возможность обнаружения
Скомпилированные команды в PowerShell называются командлетами. В оригинале слово cmdlet произносится полностью: «командлет». Имена командлетов соответствуют форме отдельных команд «глагол — существительное», что позволяет легко их находить. Например, командлет определяет выполняемые процессы, а командлет получает список служб и их состояний. В PowerShell существуют другие типы команд, например псевдонимы и функции, которые будут рассмотрены далее в этом пособии. Команда PowerShell — это универсальное понятие, которое часто используется для ссылки на любой тип команды в PowerShell, независимо от того, является ли он командлетом, функцией или псевдонимом.
Что такое Windows PowerShell?
PowerShell разработан на основе среды CRL и платформы .NET Framework и в отличие от командной строки, которая принимает и возвращает текст, Windows PowerShell работает с объектами. У каждого объекта в PowerShell есть свойства и методы, которые можно использовать для управления этими объектами.
В Windows PowerShell Microsoft разработала концепцию командлетов (cmdlets), которая представляет собой систему именования команд «Глагол-Существительное». Данная система позволяет системным администраторам быстрей освоить и упростить работу с PowerShell.
С помощью Windows PowerShell можно:
- Получать доступ к файловой системе;
- Управлять реестром;
- Управлять службами;
- Управлять процессами;
- Настраивать операционную систему;
- Устанавливать программное обеспечение;
- Устанавливать роли и компоненты сервера;
- Осуществлять администрирование и конфигурирование ролей и компонентов сервера;
- Писать и использовать сценарии для автоматизации управления и администрирования;
- Выполнять другие задачи системных администраторов.
Windows PowerShell содержит многие часто используемые утилиты и команды, запускаемые из командной строки, например ipconfig, ping и другие. Сделано это для того, чтобы облегчить переход системных администраторов с командной строки на PowerShell.
Также для удобства многие часто используемые команды и утилиты в PowerShell имеют синонимы (Alias), например cls — это синоним командлета Clear-Host, dir синоним Get-ChildItem (полный список синонимов можно посмотреть путем запуска командлета Get-Alias).
Для упрощения поиска нужной команды в PowerShell есть специальный командлет Get-Command, с помощью которого можно осуществлять поиск, как по глаголу, так и по существительному. Все команды в Windows PowerShell сгруппированы в модули (например, Hyper-V, NetTCPIP), что также упрощает поиск нужной команды.
После того как нужная команда найдена, можно посмотреть инструкцию по работе с этой командой, т.е. справку, для этих целей есть специальный командлет Get-Help, например следующая команда покажет справку по командлету Get-Command:
Get-Help Get-Command
Справка в Windows PowerShell может быть краткой, детальной (параметр -Detailed), полной (параметр -Full), а также можно выводить только примеры (параметр — Examples). Следующая команда покажет только примеры использования командлета Get-Command:
Get-Help Get-Command -Examples
Справка PowerShell обновляемая, т.е. ее можно обновить командой Update-Help.
Как открыть PowerShell на Windows 10: возможные способы
Многие пользователи спрашивают, как открыть PowerShell в Windows 10. Владельцы персональных компьютеров могут открывать консоль несколькими способами:
- через стартовое меню «Пуск»;
- через утилиту «Выполнить»;
- с помощью комбинации клавиш;
- через системную папку;
- через командную строку.
Через стартовое меню «Пуск»
Инструкция:
- Необходимо на панели задач щелкнуть по кнопке стартового окна.
- Далее в поисковой строке ввести ключевой запрос.
- В завершении появится список программного обеспечения, подходящего под параметры поиска.
Второй способ:
- Нужно щелкнуть ПКМ по иконке стартового меню.
- На экране появится диалоговое окно.
- В данном списке требуется найти пункт «Windows PowerShell».
Открыть консоль можно через поисковую строку или с помощью контекстного меню параметров
С помощью утилиты «Выполнить»
Инструкция:
- Требуется открыть утилиту «Выполнить», нажав сочетание клавиш «Win + R».
- В поисковой строке нужно прописать имя программы и нажать на кнопку «Enter»
С помощью комбинации клавиш
Инструкция:
- На клавиатуре требуется нажать комбинацию клавиш «Win + X».
- На экране появится консоль отладки.
К сведению! В версиях Windows 10 1903 (и более ранние) при нажатии клавиш «Win + X» появляется окно командной строки. В билде 2004 вместо нее запускается основная консоль PowerShell.
Через системную папку
Если нужна консоль PowerShell, где находится Windows 10 она, знает далеко не каждый пользователь. Как ее открыть:
- Нужно перейти в проводник и открыть раздел «Локальные диски».
- На основном томе следует отыскать папку «Windows».
- Затем следует перейти в директорию «System32».
- В данном каталоге следует прокрутить список вниз и найти папку с наименованием «Windows PS».
- Далее необходимо найти исполняемый файл программного обеспечения, который имеет расширение *exe.
- По объекту нужно щелкнуть ПКМ и в диалоговом окне выбрать «Запуск с расширенными правами доступа».
С помощью командной строки
Инструкция:
- На клавиатуре требуется нажать сочетание клавиш «Win + R».
- В поисковой строке ввести ключевой запрос «CMD».
- После запуска командной строки следует прописать код «PowerShell».
Когда запуск консоли производится через CMD, то PowerShell будет использовать текстовый интерфейс командной строки
Немного о PowerShell для Windows 10
Консоль PowerShell представляет собой средство для оптимизации работы операционной системы, обработки скриптов и выполнения команд. На данный момент среда отладки использует в качестве основного движка Net.Core, что обеспечивает быстрый доступ пользователей к удаленным системам.
PowerShell — главная среда по обработке команд
Возможности PowerShell:
- удаленный доступ к другим системам. Администратор может запустить выполнение сценариев в PowerShell с помощью команд на удаленной машине. При этом утилита предоставит пользователю подробный отчет о выполнении сценария и состоянии системы;
- работа в фоновом режиме. В PowerShell Windows 10 реализована функция последовательного вызова команд. Выполнение скриптов в фоновом режиме можно запустить на удаленной системе без дополнительных разрешений;
- группы последовательных транзакций. Разработчики программного обеспечения могут совершать последовательные команды с базой данных;
- конвейер. Пользователи могут последовательно вызвать несколько командлетов «BeginProcessing», «ProcessRecord» и «EndProcessing»;
- открытые модули. Администратор может выполнять сценарии в PowerShell и помещать исполняемый код в самостоятельный модуль. Код будет выполняться исключительно автономно, не влияя на окружение. Самостоятельный модуль может содержать в себе скрытие и открытые переменные;
- отладка скриптов. Пользователи могут при выполнении самостоятельного сценария поставить точки прерывания. Точку прерывания можно поставить при выполнении команд, когда идет запись переменных;
- новая среда выполнения скриптов. Встроенный модуль отладчика теперь имеет графический интерфейс для отображения команд. Новая среда поможет владельцам персональных компьютеров запустить несколько консолей отладки и с полной поддержкой юникода.
Запуск и отладка скриптов в Повер Шелл
Требования к операционной системе
Windows PowerShell 5.1
Windows PowerShell 5.1 выполняется в следующих версиях Windows: Для запуска Windows PowerShell 5.1 установите Windows Management Framework 5.1. Дополнительные сведения см. в статье Установка и настройка WMF 5.1.
Версия Windows | Требования к системе |
---|---|
Windows Server 2019 | Устанавливается по умолчанию |
Windows Server 2016 | Устанавливается по умолчанию |
Windows Server 2012 R2 | Установите Windows Management Framework 5.1 |
Windows Server 2012 | Установите Windows Management Framework 5.1 |
Windows Server 2008 R2 с пакетом обновления 1 (SP1) | Установите Windows Management Framework 5.1 |
Windows 10 версии 1607 и выше | Устанавливается по умолчанию |
Windows 10 версии 1507, 1511 | Установите Windows Management Framework 5.1 |
Windows 8.1 | Установите Windows Management Framework 5.1 |
Windows 7 с пакетом обновления 1 (SP1) | Установите Windows Management Framework 5.1 |
Windows PowerShell 5.0
Windows PowerShell 5.0 работает в следующих версиях Windows. Для запуска Windows PowerShell 5.0 установите Windows Management Framework 5.1. Дополнительные сведения см. в статье Установка и настройка WMF 5.1. Windows Management Framework 5.1 заменяет Windows Management Framework 5.0.
Версия Windows | Требования к системе |
---|---|
Windows Server 2019 | Более поздняя версия устанавливается по умолчанию |
Windows Server 2016 | Более поздняя версия устанавливается по умолчанию |
Windows Server 2012 R2 | Установите Windows Management Framework 5.1 |
Windows Server 2012 | Установите Windows Management Framework 5.1 |
Windows Server 2008 R2 с пакетом обновления 1 (SP1) | Установите Windows Management Framework 5.1 |
Windows 10 версии 1607 и выше | Более поздняя версия устанавливается по умолчанию |
Windows 10 версии 1507, 1511 | Устанавливается по умолчанию |
Windows 8.1 | Установите Windows Management Framework 5.1 |
Windows 7 с пакетом обновления 1 (SP1) | Установите Windows Management Framework 5.1 |
Windows PowerShell 4.0
Windows PowerShell 4.0 выполняется в следующих версиях Windows: Чтобы запустить Windows PowerShell 4.0, установите указанную версию Windows Management Framework для вашей операционной системы.
Версия Windows | Требования к системе |
---|---|
Windows 8.1 | Устанавливается по умолчанию |
Windows Server 2012 R2 | Устанавливается по умолчанию |
Windows 7 с пакетом обновления 1 (SP1) | Установите Windows Management Framework 4.0 |
Windows Server 2008 R2 с пакетом обновления 1 (SP1) | Установите Windows Management Framework 4.0 |
Windows PowerShell 3.0
Windows PowerShell 3.0 выполняется в следующих версиях Windows: Чтобы запустить Windows PowerShell 3.0, установите указанную версию Windows Management Framework для вашей операционной системы.
Версия Windows | Требования к системе |
---|---|
Windows 8 | Устанавливается по умолчанию |
Windows Server 2012 | Устанавливается по умолчанию |
Windows 7 с пакетом обновления 1 (SP1) | Установите Windows Management Framework 3.0 |
Windows Server 2008 R2 с пакетом обновления 1 (SP1) | Установите Windows Management Framework 3.0 |
Windows Server 2008 с пакетом обновления 2 (SP2) | Установите Windows Management Framework 3.0 |
Отключить PowerShell в Windows 10
Прежде чем продолжить, рекомендуется создать точку восстановления системы. Теперь следуйте приведенным ниже советам, чтобы отключить Windows PowerShell в Windows 10:
1] Отключить PowerShell в Windows 10 с помощью политики безопасности
Локальная политика безопасности предлагает пользователям способ заблокировать доступ PowerShell в Windows 10. Для этого следуйте приведенным ниже инструкциям:
- Нажмите «Пуск», введите «Локальная политика безопасности» и выберите результат в списке меню.
- Перейдите на левую панель и разверните Политики ограниченного использования программ.
- Щелкните правой кнопкой мыши Дополнительные правила и выберите Новое правило хеширования вариант.
- Если вы не найдете способ расширить Политики ограниченного использования программ затем щелкните правой кнопкой мыши Политики ограниченного использования программ и выберите Новые политики ограниченного использования программ.
Если у вас не запускается редактор локальной групповой политики, то прочитайте эту статью
В окне New Has Rule нажмите на Просматривать вариант. Теперь откройте проводник с помощью клавиш Windows + E, введите следующий путь в адресной строке и нажмите Enter:
%SystemRoot%\system32\WindowsPowerShell\v1.0
Это позволит найти 32-разрядную версию PowerShell. Выберите powershell.exe из списка, а затем щелкните Открыть > Применить> ОК.
Отключить PowerShellISE
Если вы хотите отключить PowerShellISE на своем компьютере с Windows 10, выберите из списка powershell_ise.exe (вместо powershell.exe).
В окне локальной политики безопасности щелкните правой кнопкой мыши значок Дополнительные правила в разделе «Политики ограниченного использования программ» и нажмите кнопку Новое правило хеширования, а затем выберите Просматривать.
Снова откройте проводник и скопируйте и вставьте путь, указанный ниже, в адресную строку. Затем нажмите клавишу Enter, чтобы выбрать 64-разрядную версию PowerShell.
%SystemRoot%\SysWOW64\WindowsPowerShell\v1.0
На следующей странице прокрутите вниз и выберите параметр powershell.exe, а затем щелкните значок Открыть.
Примечание: Вам нужно выбрать опцию powershell_ise.exe, если вы хотите отключить PowerShellISE.
Затем нажмите Подать заявление а затем выберите Ok кнопка.
После выполнения вышеуказанных шагов перезагрузите компьютер, чтобы сохранить изменения. Это отключит доступ к Powershell на вашем ПК.
2] Отключить PowerShell в Windows 10 с помощью групповой политики
Редактор локальной групповой политики — это мощный инструмент, доступный в Windows 10 Pro или Enterprise, который упрощает несколько задач на ПК.
Пользователи с версией Windows 10 Pro или Enterprise могут использовать инструмент групповой политики для блокировки PowerShell. Выполните следующие шаги, чтобы отключить PowerShell с помощью групповой политики:
- Прежде всего, нажмите кнопки Windows + R сочетание клавиш, чтобы открыть диалоговое окно «Выполнить».
- Введите gpedit.msc и нажмите Enter.
- В окне редактора локальной групповой политики перейдите по указанному ниже пути:
Конфигурация пользователя > Административные шаблоны > Система
Перейдите на правую панель и дважды щелкните значок Не запускать указанные приложения Windows политика.
- На следующей странице нажмите на Включено, как показано на изображении выше. Затем перейдите в Опции разделов и нажмите на Показать.
- Теперь вам нужно открыть новую ячейку, тип powershell.exe, и щелкните Ok. Это отключит доступ к PowerShell.
- Вы также можете отключить интерфейс PowerShell ISE. Для этого откройте новую ячейку, введите powershell_ise.exe и нажмите кнопку ОК.
- Однако, если вам нужно отключить PowerShell 7, введите pwsh.exe в новой ячейке, а затем щелкните Ok.
- Наконец, нажмите Применить > ОК чтобы сохранить изменения.
После завершения вышеуказанного процесса вы больше не сможете получить доступ к Powershell.
Отключить PowerShell 7 в Windows 10
Если на вашем устройстве установлен PowerShell 7, вы можете отключить его, удалив его с компьютера. Вот шаги, которые вам необходимо выполнить:
- Щелкните правой кнопкой мыши кнопку Пуск
- Выберите «Параметры».
- В приложении «Настройки» выберите категорию «Приложения».
- Затем выберите Приложения и функции вариант на левой панели.
- Теперь перейдите на правую панель, прокрутите вниз и выберите приложение PowerShell.
- Нажмите кнопку «Удалить».
- Если Windows попросит вас подтвердить, нажмите кнопку Удалить еще раз.
Таким образом, вы можете отключить доступ пользователя к PowerShell версии 7.
Как отключить PowerShell в Windows 10
Программы и компоненты
Ранее мы уже рассматривали где находятся программы и компоненты в Windows 10, среди которых и присутствует оболочка Windows PowerShell 2.0. Включение и отключение компонента позволяет добавить или удалить оболочку Windows PowerShell в Windows 10. Полностью удалить компонент из системы последней версии не получится, и собственно в этом нет необходимости.
- Откройте компоненты Windows выполнив команду optionalfeatures в окне Win+R.
- Дальше найдите в открывшемся списке компонент Windows PowerShell 2.0 и отключите его.
Чтобы отключить компонент, достаточно снять его флажок и применить изменения. Затемненный флажок означает, что компонент включен частично.
Windows PowerShell
Для отключения компонента можно использовать сам компонент Windows PowerShell. Пользователю достаточно запустить оболочку PowerShell и выполнить одну команду для отключения любого с компонентов.
- Запускаем оболочку выбрав в результатах поиска классическое приложение Windows PowerShell от имени администратора.
- В открывшемся окне выполняем следующую команду: Disable-WindowsOptionalFeature -Online -FeatureName MicrosoftWindowsPowerShellV2Root
С помощью одной команды можно отключить ненужный компонент Windows PowerShell устаревшей версии. После отключения обновленный PowerShell пятой версии останется доступным.
Заключение
Вместе с обновлениями Windows 10 обновляются и компоненты операционной системы. Изменения потерпели множество компонентов, начиная от оболочки Windows PowerShelll, и включительно до компонента виртуализации Hyper-V Windows 10.
После отключения компонента Windows PowerShell второй версии обновленный PowerShell останется. Но пользователи предпочитающие видеть командную строку в контекстном меню пуск могут нажатием одной кнопки её вернуть.
Политика выполнения
Вопреки распространенному мнению, политика выполнения в PowerShell не является средством обеспечения безопасности. Она предназначена для предотвращения непреднамеренного выполнения сценария пользователем. Определенный пользователь может без труда обойти политику выполнения в PowerShell. В таблице 1-2 показана политика выполнения по умолчанию для текущих операционных систем Windows.
Версия операционной системы Windows | Политика выполнения по умолчанию |
---|---|
Server 2019 | Удаленно подписанная |
Server 2016 | Удаленно подписанная |
Windows 10 | С ограниченным доступом |
Любая команда PowerShell может выполняться в интерактивном режиме, независимо от настройки политики выполнения. Политика выполнения влияет только на команды, выполняемые в сценарии. Командлет используется для определения текущего параметра политики выполнения, а командлет используется для изменения политики выполнения. Рекомендуется использовать политику RemoteSigned, которая требует, чтобы предназначенные для выполнения скачиваемые сценарии были подписаны доверенным издателем.
Проверка текущей политики выполнения
Если для политики выполнения задано С ограниченным доступом, сценарии PowerShell вообще не запускаются. Это параметр по умолчанию для всех клиентских операционных систем Windows. Чтобы продемонстрировать проблему, сохраните следующий код как файл с именем .
Эта команда выполняется в интерактивном режиме без ошибок при условии, что PowerShell запущена с повышенными правами администратора. Но при сохранении в виде файла сценария и попытке выполнить сценарий выдается ошибка.
Обратите внимание, что в сообщении об ошибке, приведенном в предыдущем наборе результатов, указывается точная проблема (в этой системе отключено выполнение сценариев). При выполнении в PowerShell команды, которая создает сообщение об ошибке, обязательно следует прочесть сообщение об ошибке, а не просто перезапустить команду и надеяться на ее успешное завершение
Измените политику выполнения PowerShell на удаленно подписанную.
Обязательно прочтите предупреждение, которое отображается при изменении политики выполнения. Кроме того, рекомендуется ознакомиться с разделом справки about_Execution_Policies, чтобы знать о влиянии изменения политики выполнения на безопасность.
Теперь, когда для политики выполнения задано значение Удаленно подписанная, сценарий будет выполняться без ошибок.
Прежде чем продолжить, запустите службу времени Windows. В противном случае могут возникнуть непредвиденные проблемы.
7.2.0-preview.7 — 2021-06-17
Engine Updates and Fixes
- Fix splatting being treated as positional parameter in completions () (Thanks @MartinGC94!)
- Prevent PowerShell from crashing when a telemetry mutex can’t be created () (Thanks @gukoff!)
- Ignore all exceptions when disposing an instance of a subsystem implementation ()
- Wait for SSH exit when closing remote connection () (Thanks @dinhngtu!)
General Cmdlet Updates and Fixes
- Fix retrieving dynamic parameters from provider even if globbed path returns no results ()
- Revert «Enhance Remove-Item to work with OneDrive ()» due to long path issue ()
Code Cleanup
We thank the following contributors!
@octos4murai, @iSazonov, @Fs00
- Correct parameter name passed to exception in constructor () (Thanks @octos4murai!)
- Enable nullable: () (Thanks @iSazonov!)
- Clean up code regarding and ()
- Replace with and remove () (Thanks @Fs00!)
Build and Packaging Improvements
We thank the following contributors!
- Update README.md and metadata.json for version 7.2.0-preview.6 ()
- Make sure GA revision increases from RC and Preview releases ()
- Remove from in build.psm1 () (Thanks @schuelermine!)
- Update next channel to take daily build from .NET preview 5 ()
- Fix update in the release pipeline ()
Documentation and Help Content
- Add new members to Engine and Cmdlet Working Groups document ()
- Update the command to exclude the folder that should be ignored ()
- Replace ‘User Voice’ with ‘Feedback Hub’ in ()
- Update Virtual User Group chat links () (Thanks @Jaykul!)
- Fix typo in () (Thanks @eltociear!)
- Add notes to PowerShell API ()
- Updated governance on Working Groups (WGs) ()
- Correct and improve XML documentation comments on () (Thanks @octos4murai!)
Что делать, если он не открывается
Проще всего найти PowerShell через Поиск. Пользователю нужно лишь написать в поисковой строке название искомого приложения на английском. Опция Поиск есть во всех версиях Виндовса. С ее помощью удается отыскать любой элемент ОС. В некоторых продуктах Win Поиск закреплен в списке меню Пуск. Именно эта опция позволяет за считанные секунды отыскать ПоверШелл. Запустить утилиту разрешается на пользовательских и администраторских правах.
Иногда, после установки очередного пакета обновлений, ПоверШелл может не открыться. В этом случае рекомендуется откатить систему назад (через точку восстановления). Можно просто удалить последние установленные на ПК обновления Виндовса и посмотреть на результат.
Если утилита ПоверШелл перестала работать, рекомендуется:
Активировать полное сканирование и проверку безопасности. Иногда инструмент не открывается из-за атаки вредоносного ПО. В первую очередь, рекомендуется просканировать ПК на вирусы из безопасного режима. Чаще всего причиной неполадок с утилитой является вирус Несущий угрозу файл обычно носит название: dllhst3g.exe * 32 или dllhost.exe * 32. Остановить вирус можно из Диспетчера задач.
Инициировать чистую загрузку:
- активировать «Выполнить»;
- в строчке «Открыть» написать: «msconfig»;
- появится окошко «Конфигурация системы»;
- перейти в «Общие»;
в подпункте «Выборочный запуск» убрать галочку около «Загружать элементы запуска»;
- перейти в «Услуги»;
- активировать опцию «Скрыть все службы Майкрософт» и нажать «Отключить все»;
- перейти в «Автозагрузка»;
- активировать «Открыть диспетчер задач»;
- войти в «Диспетчер…» и отключить все автозагрузки;
- сохранить изменения, закрыть окна, перезагрузить ПК.
- Отключить и еще раз включить приложение:
- одновременно нажать на «Win» и «X»;
- активировать «Панель управления»;
- перейти в подраздел «Категория»;
потом активировать «Программы»;
отыскать PowerShell и отключить опцию;
выполнить перезагрузку ПК и опять включить утилиту.
Создать новую учетную запись «Майкрософт». Иногда приложение не открывается или прекращает работу, если повреждена учетная запись. В таком случае рекомендуется создать новый аккаунт (из раздела «Настройки»). Перед созданием еще одной учетной записи рекомендуется сделать резервную копию своих файлов.
Инсталляция консоли PowerShell
Как установить консоль отладки:
- Необходимо запустить установщик с правами администратора.
- В главном окне нужно нажать на «Далее» и в качестве основного языка выбрать русский.
- Затем нужно указать папку, куда будут скопированы исполняемые файлы.
- Далее нужно выбрать дополнительные опции, которые будут использоваться в консоли отладки.
- После этого требуется нажать на «Установить».
- На экране появится окно «Контроль учетных записей», где нужно подтвердить инсталляцию с расширенными правами доступа.
Инсталляция производится от имени администратора
Описание дополнительного функционала, который нужно выбрать во время инсталляции:
- Path Environment Variable. Позволяет пользователям производить запуск консоли отладки из любой среды;
- Event Logging Manifest. Регистрация событий о состоянии и изменении управляемых объектах.