Рассказываем про Windows PowerShell — технологию для автоматизации рутинных задач, пришедшую на смену bat-файлам.
Работа с консолью Microsoft Windows
Ранее мы рассматривали командные интерпретаторы COMMAND.CMD и CMD.EXE, обеспечивающие автоматизацию задач в семействе операционных систем Microsoft Windows. Фактически данные интерпретаторы не получали обновлений с начала 2000-х годов и существуют в современных операционных системах для обеспечения совместимости.
Подробнее о bat-файлах →
Хотя современные операционные системы предлагают богатый на функции графический интерфейс, ряд однотипных задач быстрее решается через консоль. Более того, серверные редакции ОС не предоставляют графический интерфейс по умолчанию, поэтому интерпретатор командной строки является неотъемлемой частью практически любой операционной системы.
Помимо отсутствия обновлений, CMD.EXE имеет ограниченный функционал. Он не позволяет писать сложную логику и полностью отказаться от использования графического интерфейса. Корпорация Microsoft пыталась решить эти проблемы с помощью инструмента под названием Microsoft Script Host, который имел интеграцию со скриптовыми языками JScript и VBScript.
Однако Microsoft Script Host имел ряд собственных проблем:
- плохо интегрировался с командной оболочкой операционной системы,
- сопровождался скудной документацией,
- разные версии Windows имели командные интерпретаторы с разным набором команд,
- инструмент становился отличным вектором для атак.
Все это побуждало Microsoft сделать командный интерпретатор с нуля.
В 2003 году корпорация Microsoft начала разработку нового инструмента — Microsoft Shell (MSH), или Monad. Спустя три года и три бета-версии Monad была официально выпущена под новым названием Windows PowerShell 1.0 на Windows XP и Windows Vista. По ходу развития командная оболочка меняла свои названия на PowerShell Core и PowerShell.
При создании PowerShell разработчики задались целью создать инструмент, который позволил бы с легкостью использовать множество разнородных интерфейсов, предоставляемых операционной системой. Новый инструмент должен быть консистентным и легким для администратора, несмотря на количество технологий «под капотом». Например, PowerShell предоставляет доступ к API .NET-фреймворка, но не требует от администратора знания .NET.
Как и любой командный интерпретатор, PowerShell умеет запускать исполняемые файлы и имеет встроенные команды. Однако у PowerShell встроенные команды имеют название «командлет», появившееся от английского cmdlet.
Что такое командлет?
В основе взаимодействия с PowerShell лежат объекты, а не текст, как у CMD.EXE и командных интерпретаторов в *nix-системах. Такой подход меняет взгляд на организацию встроенных команд.
Командлет — это встроенная команда в PowerShell, выполняющая одну задачу и реализованная на .NET. Имя командлета соответствует правилу Глагол-Существительное, которое можно читать как Действие-Объект.
Самый важный командлет, о котором необходимо узнать в первую очередь, — Get-Help. Он отображает справочную информацию о PowerShell и командлетах.
# Получить общую справку по PowerShell
Get-Help
# Получить справку по командлету Get-Content
Get-Help Get-Content
# Получить справку по командлету Get-Help
Get-Help Get-Help
Если вам кажется, что использовать большие буквы в названии командлетов — это перебор, для вас есть хорошие новости. Все команды в PowerShell являются регистронезависимыми. Иными словами, перечисленные ниже написания эквивалентны:
Get-Help Get-Help
get-help get-help
GET-HELP GET-HELP
GeT-hElP gEt-HeLp
Хотя Windows PowerShell нечувствительна к регистру в именах и параметрах, внешние программы, которые вызываются через оболочку, могут не обладать такими возможностями.
В первой версии PowerShell все командлеты были реализованы на .NET, но начиная с версии 2.0 появилась возможность писать командлеты с использованием синтаксиса PowerShell.
Основы программы PowerShell
Перейдем к практике. PowerShell является кроссплатформенным инструментом и может быть запущена на Linux и macOS, но в данной статье будет рассматриваться только «родное» окружение — Windows.
Как запустить?
Запуск PowerShell можно произвести из меню поиска около кнопки Пуск, набрав powershell.
Аналогично можно запустить PowerShell через диалоговое окно Выполнить…, которое открывается через сочетание клавиш Windows + R.
Если по каким-то причинам у вас не установлен PowerShell, то необходимо сделать это, следуя инструкции в базе знаний Microsoft.
В случае успеха откроется синее окно. Windows PowerShell готов к вашим командам.
Синтаксис
Синтаксис PowerShell похож на синтаксис других командных интерпретаторов. Сначала команда, а затем аргументы команды. Несколько команд в одной строке разделяются точкой с запятой. Рассмотрим на примере.
Get-Help Get-Command -Online
Данная команда откроет в браузере вкладку с описанием командлета Get-Command в базе знаний Microsoft. Разберем подробнее:
- Get-Help – команда, в данном случае командлет,
- Get-Command – первый позиционный аргумент, который передается командлету,
- -Online – ключ, то есть именованный аргумент.
Обратите внимание, что в CMD.EXE именованные аргументы, то есть ключи, для встроенных команд начинались с символа слэш (/). У командлетов аргументы начинаются со знака минус. Использование знака / в PowerShell недопустимо и будет интерпретировано как ошибка.
Хотя PowerShell во многом похож на CMD.EXE, он имеет несколько существенных отличий. Во-первых, обращение к переменным производится через символ доллар, а не через знак процента. Во-вторых, PowerShell позволяет определять функции. Например:
function Get-Version {
$PSVersionTable.PSVersion
}
Данный код объявит функцию Get-Version, которая обращается к системной переменной (объекту) PSVersionTable и возвращает значение поля PSVersion. Проще говоря, выводит версию PowerShell.
Именование командлетов может быть неочевидным для администраторов с опытом работы с другими командными интерпретаторами. Поэтому рассмотрим основные команды Windows PowerShell.
Основные команды языка Windows PowerShell
В следующей таблице перечислены основные команды PowerShell и их аналоги в *nix-подобных системах и CMD.EXE. В версии PowerShell 7 количество командлетов превышает полторы тысячи!
Командлет (псевдоним) | Команда в *nix | Команда в CMD.exe | Описание |
Get-Location (pwd) | pwd | Выводит путь до текущего каталога | |
Set-Location (cd) | cd | cd | Меняет текущий каталог |
Get-ChildItem (ls) | ls | dir | Выводит содержимое текущего каталога |
Get-ChildItem | find | find | Производит поиск файлов по заданным критериям |
Copy-Item (cp) | cp | cp | Копирует файл |
Remove-Item (rm) | rm | rm | Удаляет файл |
New-Item (mkdir) | mkdir | mkdir | Создает каталог |
New-Item | touch | Создает пустой файл | |
Get-Content (cat) | cat | Выводит файлы | |
Get-Content | tail | Выводит последние 10 строк | |
Where-Object | grep | Производит фильтрацию | |
Create-Volume Format-Volume |
mkfs | Форматирует раздел | |
Test-Connection | ping | ping.exe | Отправляет ICMP-запросы, «пингует» |
Get-Help (man) | man | help | Показывает справку |
После работы в консоли *nix командлет для популярного действия, смены каталога, выглядит громоздко и непривычно. К счастью, командлеты имеют псевдонимы (алиасы), которые могут не следовать правилу именования командлетов. Список известных псевдонимов можно получить с помощью командлета Get-Alias.
Хотя таблица, представленная выше, значительно облегчит назначение командлетов, не стоит ожидать от командлетов поведения как в *nix-системах. Так, например, в PowerShell командлет Get-Content создан для вывода содержимого одного файла на экран, в то время как на *nix-системах утилита cat изначально использовалась для конкатенации (процесса соединения) нескольких файлов с последующим выводом на экран.
Очевидно, что возможности PowerShell значительно больше, чем CMD.exe. Опытный администратор знает, что некоторые задачи из таблицы можно решить в CMD.exe, несмотря на отсутствие специальных команд. Однако эти команды требуют опыта или смекалки.
Отдельно хочется отметить командлет Test-Connection, который делает то же самое, что утилита ping, но не имеет такого алиса. Разница между утилитой и командлетом в формате вывода: утилита выводит текст, а командлет возвращает объект, который можно использовать в конвейерах.
Конвейер PowerShell: особенности и параметры
По своей задумке конвейеры в PowerShell не отличаются от конвейеров в *nix-системах: они перенаправляют вывод одной команды на ввод другой. Как отмечалось ранее, в PowerShell происходит взаимодействие не с текстом, а с объектами. При выводе на экран объект трансформируется в таблицу, чтобы человеку было удобнее читать, но не всегда таблица выводит все поля объекта.
Особенность конвейеров PowerShell заключается в том, что конвейер передает результат не целиком, а по одному объекту. Командлет Test-Connection выводит четыре объекта: по одному на каждый ICMP-запрос. Если подключить командлет к конвейеру, то можно увидеть подтверждение этому тезису. Воспользуемся командлетом Select-Object, чтобы выбрать колонку со временем запроса.
Test-Connection selectel.ru | Select-Object ‘Time(ms)’
После запуска данной команды можно наблюдать, как с некоторой задержкой печатаются пустые строки по одной.
Но как же так? Дело в том, что отображение объекта при выводе на экран не всегда соответствует имени поля в объекте. Чтобы получить полный список полей в объекте, необходимо вызвать командлет Get-Member.
PS C:Userssun> Test-connection selectel.ru | Get-Member
TypeName: System.Management.ManagementObject#rootcimv2Win32_PingStatus
Name MemberType Definition
---- ---------- ----------
PSComputerName AliasProperty PSComputerName = __SERVER
Address Property string Address {get;set;}
BufferSize Property uint32 BufferSize {get;set;}
NoFragmentation Property bool NoFragmentation {get;set;}
PrimaryAddressResolutionStatus Property uint32 PrimaryAddressResolutionStatus {get;set;}
ProtocolAddress Property string ProtocolAddress {get;set;}
ProtocolAddressResolved Property string ProtocolAddressResolved {get;set;}
RecordRoute Property uint32 RecordRoute {get;set;}
ReplyInconsistency Property bool ReplyInconsistency {get;set;}
ReplySize Property uint32 ReplySize {get;set;}
ResolveAddressNames Property bool ResolveAddressNames {get;set;}
ResponseTime Property uint32 ResponseTime {get;set;}
ResponseTimeToLive Property uint32 ResponseTimeToLive {get;set;}
RouteRecord Property string[] RouteRecord {get;set;}
RouteRecordResolved Property string[] RouteRecordResolved {get;set;}
SourceRoute Property string SourceRoute {get;set;}
SourceRouteType Property uint32 SourceRouteType {get;set;}
StatusCode Property uint32 StatusCode {get;set;}
Timeout Property uint32 Timeout {get;set;}
TimeStampRecord Property uint32[] TimeStampRecord {get;set;}
TimeStampRecordAddress Property string[] TimeStampRecordAddress {get;set;}
TimeStampRecordAddressResolved Property string[] TimeStampRecordAddressResolved {get;set;}
TimestampRoute Property uint32 TimestampRoute {get;set;}
TimeToLive Property uint32 TimeToLive {get;set;}
TypeofService Property uint32 TypeofService {get;set;}
__CLASS Property string __CLASS {get;set;}
__DERIVATION Property string[] __DERIVATION {get;set;}
__DYNASTY Property string __DYNASTY {get;set;}
__GENUS Property int __GENUS {get;set;}
__NAMESPACE Property string __NAMESPACE {get;set;}
__PATH Property string __PATH {get;set;}
__PROPERTY_COUNT Property int __PROPERTY_COUNT {get;set;}
__RELPATH Property string __RELPATH {get;set;}
__SERVER Property string __SERVER {get;set;}
__SUPERCLASS Property string __SUPERCLASS {get;set;}
ConvertFromDateTime ScriptMethod System.Object ConvertFromDateTime();
ConvertToDateTime ScriptMethod System.Object ConvertToDateTime();
IPV4Address ScriptProperty System.Object IPV4Address {get=$iphost = [System.Net.Dns]:...
IPV6Address ScriptProperty System.Object IPV6Address {get=$iphost = [System.Net.Dns]:...
Можно визуально оценить список и найти поле ResponseTime. Также в начале указан тип данного объекта, Win32_PingStatus, информацию о котором можно поискать в базе знаний Microsoft. В документации не только перечислены поля, но и их назначение. Таким образом, конечный вид конвейера будет таким:
Test-connection selectel.ru | Select-Object ResponseTime
Хотя PowerShell побуждает к интерактивной работе, его основное предназначение — автоматизировать рутинные задачи. Значит, необходимо писать скрипты.
Используйте PowerShell в работе с выделенным сервером
Соберите сервер в конфигураторе под свои задачи. Или выберите из более 100 готовых.
Подобрать
Интегрированная среда разработки
Если вы запускали PowerShell через поиск, вероятно, вы могли заметить приложение Windows PowerShell ISE.
PowerShell-скрипты — это текстовые файлы с расширением .ps1.
Windows PowerShell ISE — это интегрированная среда сценариев PowerShell, включающая в себя:
- редактор PowerShell-скриптов с автодополнением,
- окно для интерактивного выполнения командлетов в скрипте,
- список доступных командлетов с поиском.
Обратите внимание, что модуль ISE предоставляет графический интерфейс для генерации аргументов командлета. Помимо генерации команд, в функции модуля также входит вызов «справочника» по командлетам, аналогичного Get-Help, только в графическом интерфейсе.
После написания своего первого PowerShell-скрипта вы столкнетесь с некоторыми ограничениями. Во-первых, файл с расширением ps1 нельзя запустить «двойным кликом» по файлу. Необходимо открыть контекстное меню с помощью правой клавиши мыши и выбрать Запустить с помощью PowerShell.
Во-вторых, скрипт не запустится со следующей ошибкой:
Невозможно загрузить файл C:UserssunDocumentsHelloWorld.ps1, так как выполнение сценариев отключено в этой системе. Для получения дополнительных сведений см. about_Execution_Policies по адресу https:/go.microsoft.com/fwlink/
?LinkID=135170.
+ CategoryInfo : Ошибка безопасности: (:) [], ParentContainsErrorRecordException
+ FullyQualifiedErrorId : UnauthorizedAccess
По умолчанию запуск PowerShell-скриптов ограничен соответствующей политикой безопасности. Посмотреть текущее значение политики безопасности можно с помощью командлет Get-ExecutionPolicy:
PS C:Userssun> Get-ExecutionPolicy
Restricted
Список возможных значений:
- Restricted — запуск запрещен,
- AllSigned — разрешен только запуск подписанных доверенным разработчиком скриптов,
- RemoteSigned — разрешен запуск подписанных и собственных скриптов,
- Unrestricted — разрешен запуск любых скриптов.
По умолчанию стоит значение Restricted. В идеале необходимо подписывать скрипты, но для собственных нужд можно ограничиться значением RemoteSigned:
Set-ExecutionPolicy RemoteSigned
Для выполнения данной команды необходимо запустить PowerShell от имени администратора.
Выполнение задач в фоне
PowerShell позволяет выполнять задачи в фоновом режиме, эту функциональность обеспечивают командлеты с существительным Job:
- Start-Job — запустить команду или командлет в фоновом режиме,
- Get-Job — показать состояние фоновых команд,
- Wait-Job — дождаться завершения выполнения фоновой команды,
- Receive-Job — получить результат выполнения команды.
Командлет Start-Job возвращает информацию о запущенном фоновом задании. Идентификатор, обозначенный в поле Id, является уникальным для сессии PowerShell.
Настройка удаленного выполнения
PowerShell позволяет реализовать удаленное выполнение командлетов, скриптов, но только на платформе Windows. Для включения возможности удаленного управления необходимо выполнить командлет Enable-PSRemoting с правами администратора.
Командлет Enter-PSSession запустит удаленную интерактивную сессию, а Invoke-Command выполнит команду на одном или нескольких удаленных компьютерах.
PowerShell – актуальные версии программы
PowerShell — мощный инструмент, пришедший на смену пакетным файлам. Он более функциональный и современный, а документация и различные руководства Windows PowerShell по работе делают его подходящим как для начинающих, так и продолжающих пользователей. В тексте мы составили описание PowerShell, — рассмотрели основные возможности программы, понятия, связанные с ней, синтаксис PowerShell и структуру языка.
На момент написания статьи актуальная версия PowerShell — 7.2. Используйте этот текст в качестве краткого справочника по Windows PowerShell, администрирование систем со скриптами в этой программе будет довольно простым.
Содержание
- 1. Что такое powershell.exe?
- 2. Powershell.exe безопасно, или это вирус или вредоносная программа?
- 3. Могу ли я удалить или удалить powershell.exe?
- 4. Распространенные сообщения об ошибках в powershell.exe
- 5. Как исправить powershell.exe
- 6. Январь 2023 Обновление
- 7. Загрузите или переустановите powershell.exe
Обновлено 2023 января: Вот три шага к использованию инструмента восстановления для устранения проблем с exe на вашем компьютере: Получите его по адресу эту ссылку
- Скачайте и установите это программное обеспечение.
- Просканируйте свой компьютер на наличие проблем с exe.
- Исправьте ошибки exe с помощью программного инструмента
powershell.exe это исполняемый файл, который является частью Windows PowerShell V2 CTP Программа, разработанная Корпорация Microsoft, Программное обеспечение обычно о 958 KB по размеру.
Расширение .exe имени файла отображает исполняемый файл. В некоторых случаях исполняемые файлы могут повредить ваш компьютер. Пожалуйста, прочитайте следующее, чтобы решить для себя, является ли powershell.exe Файл на вашем компьютере — это вирус или троянский конь, который вы должны удалить, или это действительный файл операционной системы Windows или надежное приложение.
Рекомендуется: Выявление ошибок powershell.exe, связанных с
(опциональное предложение для Reimage — Cайт | Лицензионное соглашение | Персональные данные | Удалить)
Powershell.exe безопасно, или это вирус или вредоносная программа?
Первое, что поможет вам определить, является ли тот или иной файл законным процессом Windows или вирусом, это местоположение самого исполняемого файла. Например, такой процесс, как powershell.exe, должен запускаться, а не где-либо еще.
Для подтверждения откройте диспетчер задач, выберите «Просмотр» -> «Выбрать столбцы» и выберите «Имя пути к изображению», чтобы добавить столбец местоположения в диспетчер задач. Если вы обнаружите здесь подозрительный каталог, возможно, стоит дополнительно изучить этот процесс.
Еще один инструмент, который иногда может помочь вам обнаружить плохие процессы, — это Microsoft Process Explorer. Запустите программу (не требует установки) и активируйте «Проверить легенды» в разделе «Параметры». Теперь перейдите в View -> Select Columns и добавьте «Verified Signer» в качестве одного из столбцов.
Если статус процесса «Проверенная подписывающая сторона» указан как «Невозможно проверить», вам следует взглянуть на процесс. Не все хорошие процессы Windows имеют метку проверенной подписи, но ни один из плохих.
Наиболее важные факты о powershell.exe:
- Находится в C: Windows System32 WindowsPowerShell v1.0 ан-нас вложенная;
- Издатель: Корпорация Microsoft
- Полный путь:
- Файл справки: connect.microsoft.com
- URL издателя: technet.microsoft.com/en-us/library/bb978526.aspx
- Известно, что до 958 KB по размеру на большинстве окон;
Если у вас возникли какие-либо трудности с этим исполняемым файлом, перед удалением powershell.exe вам следует определить, заслуживает ли он доверия. Для этого найдите этот процесс в диспетчере задач.
Найдите его местоположение (оно должно быть в C: Windows System32 windowspowershell v1.0 en-us) и сравните размер и т. Д. С приведенными выше фактами.
Если вы подозреваете, что можете быть заражены вирусом, вы должны немедленно попытаться это исправить. Чтобы удалить вирус powershell.exe, необходимо Загрузите и установите приложение полной безопасности, например Malwarebytes., Обратите внимание, что не все инструменты могут обнаружить все типы вредоносных программ, поэтому вам может потребоваться попробовать несколько вариантов, прежде чем вы добьетесь успеха.
Кроме того, функциональность вируса может сама влиять на удаление powershell.exe. В этом случае вы должны включить Безопасный режим с загрузкой сетевых драйверов — безопасная среда, которая отключает большинство процессов и загружает только самые необходимые службы и драйверы. Когда вы можете запустить программу безопасности и полный анализ системы.
Могу ли я удалить или удалить powershell.exe?
Не следует удалять безопасный исполняемый файл без уважительной причины, так как это может повлиять на производительность любых связанных программ, использующих этот файл. Не забывайте регулярно обновлять программное обеспечение и программы, чтобы избежать будущих проблем, вызванных поврежденными файлами. Что касается проблем с функциональностью программного обеспечения, проверяйте обновления драйверов и программного обеспечения чаще, чтобы избежать или вообще не возникало таких проблем.
Согласно различным источникам онлайн,
9% людей удаляют этот файл, поэтому он может быть безвредным, но рекомендуется проверить надежность этого исполняемого файла самостоятельно, чтобы определить, является ли он безопасным или вирусом. Лучшая диагностика для этих подозрительных файлов — полный системный анализ с Reimage, Если файл классифицируется как вредоносный, эти приложения также удаляют powershell.exe и избавляются от связанных вредоносных программ.
Однако, если это не вирус, и вам нужно удалить powershell.exe, вы можете удалить Windows PowerShell V2 CTP со своего компьютера, используя программу удаления, которая должна находиться по адресу: MsiExec.exe / X {161BA3E6-D067-446D- A768-18585FF07765}. Если вы не можете найти его деинсталлятор, вам может потребоваться удалить Windows PowerShell V2 CTP, чтобы полностью удалить powershell.exe. Вы можете использовать функцию «Установка и удаление программ» на панели управления Windows.
- 1. в Меню Пуск (для Windows 8 щелкните правой кнопкой мыши в нижнем левом углу экрана), нажмите Панель управления, а затем под Программы:
o Windows Vista / 7 / 8.1 / 10: нажмите Удаление программы.
o Windows XP: нажмите Установка и удаление программ.
- 2. Когда вы найдете программу Windows PowerShell V2 CTPщелкните по нему, а затем:
o Windows Vista / 7 / 8.1 / 10: нажмите Удалить.
o Windows XP: нажмите Удалить or Изменить / Удалить вкладка (справа от программы).
- 3. Следуйте инструкциям по удалению Windows PowerShell V2 CTP.
Распространенные сообщения об ошибках в powershell.exe
Наиболее распространенные ошибки powershell.exe, которые могут возникнуть:
• «Ошибка приложения powershell.exe».
• «Ошибка powershell.exe».
• «PowerShell.exe столкнулся с проблемой и будет закрыт. Приносим извинения за неудобства».
• «PowerShell.exe не является допустимым приложением Win32».
• «PowerShell.exe не запущен».
• «powershell.exe не найден».
• «Не удается найти powershell.exe».
• «Ошибка запуска программы: powershell.exe.»
• «Неверный путь к приложению: powershell.exe».
Эти сообщения об ошибках .exe могут появляться во время установки программы, во время выполнения связанной с ней программы Windows PowerShell V2 CTP, при запуске или завершении работы Windows, или даже при установке операционной системы Windows. Отслеживание момента появления ошибки powershell.exe является важной информацией при устранении неполадок.
Как исправить powershell.exe
Аккуратный и опрятный компьютер — это один из лучших способов избежать проблем с Windows PowerShell V2 CTP. Это означает выполнение сканирования на наличие вредоносных программ, очистку жесткого диска cleanmgr и ПФС / SCANNOWудаление ненужных программ, мониторинг любых автозапускаемых программ (с помощью msconfig) и включение автоматических обновлений Windows. Не забывайте всегда делать регулярные резервные копии или хотя бы определять точки восстановления.
Если у вас возникла более серьезная проблема, постарайтесь запомнить последнее, что вы сделали, или последнее, что вы установили перед проблемой. Использовать resmon Команда для определения процессов, вызывающих вашу проблему. Даже в случае серьезных проблем вместо переустановки Windows вы должны попытаться восстановить вашу установку или, в случае Windows 8, выполнив команду DISM.exe / Online / Очистка-изображение / Восстановить здоровье, Это позволяет восстановить операционную систему без потери данных.
Чтобы помочь вам проанализировать процесс powershell.exe на вашем компьютере, вам могут пригодиться следующие программы: Менеджер задач безопасности отображает все запущенные задачи Windows, включая встроенные скрытые процессы, такие как мониторинг клавиатуры и браузера или записи автозапуска. Единый рейтинг риска безопасности указывает на вероятность того, что это шпионское ПО, вредоносное ПО или потенциальный троянский конь. Это антивирус обнаруживает и удаляет со своего жесткого диска шпионское и рекламное ПО, трояны, кейлоггеры, вредоносное ПО и трекеры.
Обновлено в январе 2023 г .:
Мы рекомендуем вам попробовать это новое программное обеспечение, которое исправляет компьютерные ошибки, защищает их от вредоносных программ и оптимизирует производительность вашего ПК. Этот новый инструмент исправляет широкий спектр компьютерных ошибок, защищает от таких вещей, как потеря файлов, вредоносное ПО и сбои оборудования.
- Шаг 1: Скачать PC Repair & Optimizer Tool (Windows 10, 8, 7, XP, Vista — Microsoft Gold Certified).
- Шаг 2: Нажмите «Начать сканирование”, Чтобы найти проблемы реестра Windows, которые могут вызывать проблемы с ПК.
- Шаг 3: Нажмите «Починить все», Чтобы исправить все проблемы.
(опциональное предложение для Reimage — Cайт | Лицензионное соглашение | Персональные данные | Удалить)
Загрузите или переустановите powershell.exe
Вход в музей Мадам Тюссо не рекомендуется загружать заменяемые exe-файлы с любых сайтов загрузки, поскольку они могут содержать вирусы и т. д. Если вам нужно скачать или переустановить powershell.exe, мы рекомендуем переустановить основное приложение, связанное с ним. Windows PowerShell V2 CTP.
Информация об операционной системе
Ошибки powershell.exe могут появляться в любых из нижеперечисленных операционных систем Microsoft Windows:
- Windows 10
- Windows 8.1
- Windows 7
- Windows Vista
- Windows XP
- Windows ME
- Windows 2000
Для многих пользователей, этот неотъемлемый элемент ОС Windows, представляется настоящей загадкой. Открывая его, они видят список из непонятных символов, разобраться в котором для непосвященных не представляется возможным. Но не стоит его недооценивать, это программа, несущая важную управленческую функцию, способна упростить работу с ПК, в чем бы она ни выражалась.
Утилита полностью автоматизирована, для управления рабочими процессами понадобится минимальное вмешательство человеческого фактора. Все что для нужно — задавать правильные команды. Но прежде чем это делать, нужно разобраться в главном вопросе: Что такое Windows PowerShell, для каких целей он служит и какие функции выполняет.
Краткий обзор программы
По сути, это усовершенствованная версия MS-DOS – старейшей дисковой операционной системы от компании Microsoft, выпущенной еще в середине 80-х гг. прошлого века. Она содержала в себе приложения, с функцией интерпретаторов, далеких от совершенства, умевших задавать несколько простых команд.
Разработчики неоднократно пытались компенсировать недостатки MS-DOS дополнительными компонентами для запуска сценария, такими как MS Script Host, с языками вроде Jscript, но это решало проблему лишь частично. В 2003 г. началась разработка программы способной заменить старую оболочку, получившую название Monad, известную сейчас как PowerShell. Хотя его впервые запустили в конце 2006 года и включили в ОС Windows XP, в завершенном виде он вышел только спустя 10 лет непрерывных доработок, в 2016 г. когда получил открытый исходный код. PowerShell широко используется в Windows 7, 8 и 10.
Ответить на этот вопрос в двух словах не получится, он слишком сложный и требует детального рассмотрения. Это средство автоматизации с расширяемыми свойствами и открытым исходным кодом – оболочка, заключающая в себе интерфейс командной строки с языком сценариев для выполнения скриптов, содержащихся в ней. Набор скриптов, заключенных в системные файлы имеет расширение PS1, но для удобства пользователей запускается как обычные BAT и CMD файлы.
Таким образом, PowerShell – это не что иное, как скриптовый язык, созданный на платформе .NET для выполнения задач по части управления файлами, сохраненными на системном диске, запущенными процессами и службами. Кроме того, ему подчинено управление аккаунтами в сети Интернет и любыми настройками, от системных, до настроек функциональности отдельных приложений. Но сам по себе PowerShell только оболочка, основные функции выполняют сопутствующие элементы, наполняющие ее. Далее постараемся разобраться в PowerShell, чтобы работа с утилитой стала понятна даже «чайникам».
Командлеты
Самые важные — это командлеты, исполняемые файлы, содержащие в себе собственную программу, загружаемую в компьютер для выполнения поставленных задач. Они являются главной составляющей Виндовс Пауэр Шелл, отвечая за его функциональность, и представляют собой набор команд для запуска сценария, вводящегося в командной строке.
Это несколько отличается от запросов, вводимых в поисковой строке браузера, но имеет те же принципы. В оболочке содержится сохраненная коллекция из сотен таких команд, отвечающих за определенные задачи. Формируются командлеты по обычному принципу Глагол + Существительное, что отражает их назначение.
Конвейер
Второй по значимости элемент (тип команд) PowerShell, передающий выходные данные одних командлетов во входные данные других, служит как бы посредником между ними. Конвейер служит, главным образом, для передачи и возврата не только командлетов, но и любых других объектов. Способен он выполнять и более сложные и ответственные задачи. А наиболее важно то, что для этого не требуется писать сложные алгоритмы и сценарии.
Разработчики Microsoft при создании конвейера, использовали как наглядный пример аналог, задействованный в Linux, но не копировали его, а сделали его максимально удобным и функциональным. Если сравнивать их, общая между ними только характеристика функций, выраженная в фактически непрерывном потоке данных, содержащих миллионы символов.
Сценарии
Сценарии — менее значимые типы команд в PowerShell, являющие собой блоки кодов, сохраняющиеся в отдельном от остальных файле, но так же поддерживающие расширение PS1. Главным их преимуществом служит то, что сохраненные коды не нужно каждый раз набирать в ручном режиме. Не имеет значения, в каком из текстовых редакторов они пишутся, хоть в Word, хоть Paint, принципиально только придерживаться установленного расширения.
В самой оболочке присутствует интегрированная в нее среда для сценариев, воспользовавшись которой можно еще больше упростить их написание. Для их создания, установлены правила оформления текста, перед именем используется символ «$», путь к сохраненному файлу заключается в фигурные скобки, а обращение к свойствам происходит с использованием «.» впереди. Сценарии дополняются аргументами с использованием круглых скобок и комментариями с оформлением символами «#».
Дополнения
Кроме стандартных типов команд и 240 командлетов, содержащихся в PowerShell, в него включено множество дополнений, призванных еще больше упростить работу и расширить функциональные возможности. Список наиболее важных дополнений:
- C WS-Management, одной из опций «Remonting», появляется возможность вызова сценариев и командлетов на удаленных машинах, одной или сразу нескольких. С его помощью отслеживается состояние выполнения команд, по результатам выданным объектами сериализации и структуризации. Дополнительно возможна установка интерактивных сессий.
- С помощью «Фоновых работ», можно перевести вызов команд в асинхронную последовательность. Для запуска используются опции локальной машины, а при желании и сразу нескольких удаленных. Единственное неудобство – использование интерактивных командлетов становится в этом случае невозможным.
- Применяя опции «Модулей» намного проще становится организация сценариев и их помещение в самодостаточные модули. При этом, их коды выполняются в независимом контексте, не оказывая заметного влияния на структуру окружения, ограниченного при организации. Функциональное содержание модулей имеет 3 типа: приватное, публичное и переменное.
- При помощи подмножества «Языков данных» отделяются их определения от исполняемых кодов для сценариев. Благодаря этому, становится возможен импорт в процессе их выполнения локализованных строк, помещающихся в тело сценариев.
- С «Отладкой сценариев» удобнее установка точек прерывания, в теле их самих или в сопутствующих функциях оболочки. Точки прерывания устанавливаются в любом месте в столбцах и строках, для чтения, команд или записи. Их можно также устанавливать и контролировать, при помощи командлетов, имеющих отношение к сценариям.
- Функции «Событирования» направлены на прослушивание, перенаправление, выполнение действий и управление возникающих событий. Данная процедура включает оповещения о любых изменениях состояния объектов, находящихся под управлением. Кроме того, предполагает подписку сценариев на ObjectEvents, с последующей синхронной и асинхронной обработкой.
- Использование «Advanced Functions», упрощает разработку командлетов полноценного образца, при помощи возможностей самой программы и включенных в нее элементов.
- Возможности «Обработки ошибок», позволят использовать разные типы исключений каждого блока (catch) по-отдельности.
Как запустить PowerShell
Дополнительное удобство программы в том, что запускается PowerShell при помощи разных способов, отличающихся в техническом плане, но идентично для всех версий Виндовс, в том числе Windows 10. Благодаря этому, каждый подбирает индивидуальный подход, в зависимости от ситуации. Существует несколько способов запуска.
При помощи «Поиска»
Для этого потребуется кликнуть по соответствующему значку, размещенному на панели задач, или применить комбинацию клавиш «Win + S». В отрывшемся окне, в поисковой строке набрать «powershell», а в выданном результате выбрать «Классическое предложение». Можно также вызвать контекстное меню правым кликом, где воспользоваться «Запуском от имени администратора».
Через меню «Пуск»
Кликом по кнопке «Пуск» открыть список приложений, в сортированной группе озаглавленной «W» выбрать папку с программой. Развернуть ее и кликнуть по приложению в верхней строчке. Здесь также в виде варианта, можно вызвать контекстное меню правой кнопкой мыши и запустить «от имени администратора».
С использованием сочетания клавиш
Этот способ подразумевает предварительное действие, заключающееся в замене командной строки оболочкой «Widows PowerShell» с функцией «Меню Win + X». После этого войти в соответствующее меню сочетанием клавиш, или через контекстное меню правым кликом по кнопке «Пуск», где выбрать нужный пункт в представленном списке.
Через диалог «Выполнить»
Один из простейших способов, с открытием диалогового окна «Выполнить». Для его вызова, применить сочетание клавиш «Win + R», в строке «Открыть» ввести команду с именем программы. Для ее запуска нажать на клавишу «Enter» или кнопку «Ок» на панели окна.
С помощью «Диспетчера задач»
Чтобы открыть диспетчер, применить сочетание клавиш «Ctrl + Shift + Esc», в открывшемся окне, во вкладке «Файл» выбрать вариант «Запуска новой задачи». В новом окне, напротив строки «Открыть», вписать «powershell» и нажать на «Enter». В случае если требуется создание задачи от имени администратора, отметить галочкой соответствующую опцию и подтвердить нажатием по кнопке «Ок».
Через «Проводник»
После его открытия, потребуется указать имя папки или диска, где будет запускаться программа. На вкладке «Файл» выбрать вариант «Запустить Widows PowerShell» и нажать на нужный пункт.
Через системную папку
В поисковой строке ввести адрес программы: «C:WindowsSystem32WindowsPowerShellv1.0». В открывшемся списке выбрать папку «powershell.exe» и открыть ее двойным левым кликом. Чтобы упростить процесс в будущем, можно создать ярлык файла и закрепить в любом удобном месте: на панели задач, в меню «Пуск», или рабочем столе. При необходимости запуск оболочки будет осуществляться двойным кликом по иконке.
Процедура использования утилиты
При первичном ознакомлении с PowerShell, он представляется непостижимым, как формулы в высшей математике, но это обманчивое впечатление. В действительности, использовать программу достаточно легко, если разобраться в ее основах: принципах работы, в особенностях ввода и выполнения команд. В этом, разные типы несколько отличаются, но принципы и правила остаются общими для всех.
Работа с командлетами
На простом примере, команда, задающаяся как «Get-Help» — это своеобразный справочник утилиты, предоставляющий при вводе общую информацию. Если нужна справка по определенному процессу, например о подключенных дисках, нужно задать команду – «Get-Help Get-PSDrive», и так по любому вопросу, меняя только имя командлета. Для каких либо действий, к примеру, очистки корзины от файлового мусора, обычно используется «Clear-RecycleBin», применяющийся и для более важных задач в обслуживании ПК и для написания скриптов. Но отвечает он и за такой простой процесс, как очистка системных корзин. Прежде нужно указать диск, подлежащий очистке, по принципу: «Clear-RecycleBin C:» для подтверждения действия ввести символ «Y» и нажать на «Enter».
Работа с конвейером
В работе, конвейер чрезвычайно прост и удобен, чем особенно выделяется на фоне других типов команд. Например, если выводить результат Get-Process, содержащий информацию об активных процессах на ПК в командлет Soft-Object, он отсортирует их по дескрипторам. Переведя полученные значения в Where-Object, произойдет фильтрация этих процессов по заданному параметру, к примеру, наименьшего объема страничной памяти. А если и этот результат вывести в Select-Object, он выделит лишь первые 10 процессов, с учетом числа дескрипторов.
Или еще один простой пример, применяющийся для получения информации о самых тяжеловесных файлах, хранящихся на системном диске: Команда Get-ChildItem, открывает каталог для выбора объекта, Sort-Object отсортирует выбранный объект, а Select-Object укажет его нужные свойства.
Работа со сценарием
При создании алгоритмов, часто применяется Windows PowerShell ISE, специально созданный механизм, в том числе и для использования сценариев. В нем, под названием «Безымянный 1.ps1» вводится тело кода. Разберем на простом примере: «WMID WebMoney» в названии задать условно «wmid», сохранить файл в корне диска С. Для запуска потребуется войти в каталог, применяя команду «cd C:» имя файла должно значиться в таком ключе: «.wmid». Примечательно, что сценарии запускаются и из командной строки ОС, но для этого нужно изменить путь к нему: «powershell.exe C: wmid.ps1». При этом важно помнить, что выполнять сценарии по умолчанию запрещается, для получения разрешения на такие действия, следует задать команду Set-ExecutionPolicy.
Самые полезные командлеты PowerShell
В оболочке собран их внушительный каталог, представленный сотнями команд. Запомнить все эти названия и приложенные к ним свойства, не представляется возможным. Но этого и не нужно делать, большинство их используется крайне редко, а то и вовсе не применимы на практике. Следует обратить внимание лишь на самые важные, практичные, несущие в себе полезные функции.
Наиболее полезные в применении:
- Get-Help – справочник по назначению командлетов и общим свойствам оболочки;
- Update-Help — загрузка и установка обновленных справочных данных;
- Get-Command – поисковик требуемых команд, с авто заполнением строки;
- Get-Alias – отражает установленные псевдонимы, общим списком или с конкретикой;
- Get-PSDrive – представляет запущенные диски и происходящие на них процессы;
- Install-WindowsFeature – ролевой и компонентный установщик;
- Uninstall-WindowsFeature – ролевой и компонентный деинсталлятор;
- Get-History – отвечает за возвращение командных списков, выполненных при входе.
- $hversion – возвращает версию утилиты
Переменные:
- Get-Variable – показывает списком все переменные с учетом их значений;
- New-Variable – используется для настройки ново созданных переменных;
- Set-Variable – устанавливает новые значения, если они не значатся в списке;
- Clear-Variable – деинсталлятор содержания, сохраняющий образ;
- Remove-Variable — деинсталлятор командлетов и их составляющих.
Форматирование:
- Format-List – расширенный справочник;
- Format-Table – выводит таблицу результатов отдельных команд;
- Format-Wide — расширенная таблица по результатам, со свойствами отдельных объектов.
Интернет:
- Enable-NetAdapter – для включения адаптера;
- Rename-NetAdapter – задает новое имя и представление;
- Restart-NetAdapter – используется для перезапуска;
- Get-NetIPAddress – предоставляет данные по конфигурации прокси-сервера;
- Set-NetIPAddress – задает новую конфигурацию прокси-серверу;
- New-NetIPAddress – занимается созданием и настройкой прокси-сервера;
- Remove-NetIPAddress – деинсталлятор прокси-сервера;
- New-NetRoute – используется для внесения дополнительных записей;
- Get-NetIPv4Protocol — предоставляет данные по протоколу IPv4;
- Get-NetIPInterface — отражает свойства и характеристики веб-интерфейса IP.
Элементы:
- Get-Item — принимает элементы по заданному пути;
- Move-Item – для перемещения элементов по другим папкам;
- New-Item – используется для создания и оформления;
- Remove-Item – деинсталлятор отмеченных элементов;
- Get-Location – показывает местонахождение в настоящем времени.
Фоновые задания:
- Start-Job – выполняет запуск;
- Stop-Job – останавливает работу;
- Get-Job – открывает список;
- Receive-Job – предоставляет информацию о результатах;
- Remove-Job – деинсталлятор фоновых задач.
Объекты:
- Measure-Object – используется для расчета числовых агрегирующих параметров;
- Select-Object – для выбора с указанием конкретных свойств;
- Where-Object – отражает условия касательно выборки по значению и свойствам.
Службы и процессы:
- Get-Process – показывает информацию об активных процессах ПК;
- Start-Process – производит запуск на ПК;
- Stop-Process — прекращает работу избранных;
- Get-Service – предоставляет данные об активных службах;
- Restart-Service – осуществляет перезапуск;
- Start-Service – используется для подключения выбранных;
- Stop-Service – ставит на паузу процесс;
- Set-Service – изменяет свойства служб и режим подключения.
Компьютер и система:
- Restart-Computer – используется для перезапуска ОС;
- Checkpoint-Computer — для создания системной восстановительной копии для ПК;
- Restore-Computer – отвечает за запуск восстановленной системы;
- Remove-Computer — деинсталлирует локальный ПК из доменного имени;
- Clear-EventLog – очищает список записей в журнале.
Контент:
- Get-Content – принимает содержимое различных элементов;
- Clear-Content — стирает содержимое, но сохраняет образы;
- Set-Content – используется для перезаписи.
Что такое PowerShell ISE
Это графическая оболочка скриптового языка, идущая в комплекте с утилитой в виде ее приложения, главным образом для пуска независимых консолей. В процессе запуска, поддерживается Юникодом и символическими стандартами, с доступом к закладкам интерфейса основной программы. Разработана она для создания скриптов, редактирования и управления ими, с функцией отслеживания их местонахождения. Кроме этого, умеет работать с текстовыми документами в любом формате и файлами XML, выполнять выделенные фрагменты сценариев, а за счет встроенного редактора, способна обновлять интерфейс, расширяя и дополняя его.
Удобство работы создает цветовая подсветка синтаксиса, что существенно облегчает тестирование на предмет выявления ошибок и несоответствий в кодах. При помощи среды может копировать и менять значительные фрагменты в кодах, запускать отдельные части скриптов. Отмечается, что ISE намного превосходит консоли самой Пауэер Шелл, и вполне способна стать ее заменой.
Удаление программы
Microsoft PowerShell системный компонент, поэтому удалить его, в принципе нельзя. Конечно, при большом желании можно воспользоваться нашей статьей и удалить этот системный компонент, но это может привести к неработоспособности системы, поэтому не рекомендуется это делать.
Хотя стоит заметить, что иногда необходимо удалить Windows PowerShell 1.0, поскольку операционная система может не обновляться из-за этого элемента. Сделать это можно так:
- Запускаем системный поиск и вводим appwiz.cpl.
- В окне выбираем – Просмотр установленных обновлений.
- Ищем нужный компонент в списке обновлений, обычно это KB928439 и удаляем его.
Windows PowerShell, даже с большой натяжкой нельзя назвать простой и доступной программой, она сложная для понимания, и освоить ее за короткий промежуток времени не получится. Но учитывая тот факт, что создавалась она отнюдь не для программистов, а для начинающих пользователей, не настолько она непостижима, как может показаться. Очевидным преимуществом оболочки является ее удобство и автоматизированный процесс, а все что потребуется – только вникнуть в тонкости.
Windows PowerShell — что это за программа? Такой вопрос довольно часто встречается среди пользователей, начинающих «глубже» изучать Windows. Рядовым пользователям такая программа вообще не нужна. «Рядовой пользователь» — это тот, кто не любит настраивать операционную систему «под себя». Максимум, на что он способен, — это поменять тему рабочего стола. Таких пользователей очень много.
Windows PowerShell — это программа, которая пригодится системным администраторам Windows-серверов или тем, кто хочет «покопаться» в тонких настройках этой операционной системы. При помощи этой программы можно:
запускать исполнение скриптов, влияющих на работу системы;
настраивать, останавливать или активировать внутренние сервисы и службы;
конфигурировать большинство программ, установленных на компьютере.
Многие пользователи компьютеров знают или слышали, что у Linux-систем очень развита конфигурация системы через терминал и командные скрипты. У Виндовс такой способ конфигурации был слабо развит, пока не появилась программа Windows PowerShell.
Windows PowerShell — что это за программа?
Сегодняшняя статья не будет глубоким погружением в работу этой программы, так как все ее возможности описать в рамках одной статьи невозможно. Цель статьи — ответить на вопрос: «Windows PowerShell — что это за программа?», чтобы пользователи смогли решить, стоит ли им дальше ее изучать.
Windows PowerShell — это оболочка для стандартной командной строки и по совместительству язык сценариев для администрирования системы. Эта программа создана на основе «.NET Framework». По сути, эта программа нужна для автоматизирования администрирования операционной системы. Она подходит для системных администраторов и для «продвинутых» пользователей, которые не боятся самостоятельно конфигурировать ОС.
Как запустить Windows PowerShell?
Windows PowerShell — это утилита, которая уже встроена в систему. Если у вас не «обрезанная» операционная система, тогда она уже есть в компьютере. «Обрезанная система» — это операционная система, которая была «обработана» опытными пользователями. То есть они удалили все лишнее из ОС, чтобы сделать ее «легче». Как правило, «обрезанные» системы — это пиратские копии Windows.
Если у вас обычная система, тогда запустить Windows PowerShell очень просто. Воспользуйтесь любым удобным способом:
Через утилиту «Выполнить». Откройте меню «Выполнить» и введите в него команду «powershell». Можно воспользоваться более «продвинутой» версией «PowerShell ISE». Для этого тут же можно ввести команду «PowerShell ISE». «ISE»-версия более предпочтительна, так как имеет более широкие возможности и более удобна.
Через меню «Пуск». Откройте меню «Пуск» и спуститесь в самый низ, где расположены программы на букву «W». Найдите папку «Windows PowerShell» и выберете программу, подходящую для вас. Опять же, это может быть «чистая» «Windows PowerShell» или «Windows PowerShell ISE».
Также, чтобы запустить Windows PowerShell, можно использовать «Диспетчер задач» или «Проводник». Можно запустить программу прямо из папки на диске «С». Но все это более сложные способы, первые два намного легче и проще, поэтому воспользуйтесь ими.
Как используется программа Windows PowerShell?
В Windows PowerShell есть удобный инструмент — «cmdlets». По сути, это функциональные команды, которые формируются по принципу «Действия-Объекты». Например, когда нужна документационная помощь, можно воспользоваться командой «Get-Help». В ответ вы получите документацию по использованию программы Windows PowerShell. Глагол «Get» означает «получить», а в контексте программы Windows PowerShell — «показать», но есть и другие глаголы, формирующие команды. Например:
«Add» — «добавить»;
«Clear» — «очистить»;
«Enable» — «подключить»;
«Disable» — «отключить»;
«New» — «создать»;
«Remove» — «удалить»;
«Set» — «задать»;
«Start» — «активировать»;
«Stop» — «остановить»;
«Export» — «экспортировать»;
«Import» — «импортировать».
Функциональные команды не зависят от регистра, то есть «Start-Script» — это то же самое, что и «start-script». Если нужно ввести сразу несколько команд, тогда они разделяются «точкой с запятой», например: «Start-Script; Export-File».
Внутри Windows PowerShell спрятано очень много функциональных команд. Те, которые часто используются пользователями, укомплектованы в «укороченные» команды — алиасы. Например, вместо «Get-Help» можно ввести просто «help», а вместо «Add-Content» можно использовать «ас». Другими словами, алиасы — это те же синонимы, то есть «Add-Content» и «ac» выполняют одно и то же действие, но пишутся по-разному. Весь перечень «синонимов» можно посмотреть прямо в Windows PowerShell, если ввести команду «Get-Alias».
У команд могут быть собственные аргументы. Например, если нужно остановить какой-то конкретный процесс в системе, вы не можете просто ввести команду «Stop-Process». Нужно указать, какой процесс вы хотите остановить. Хорошо, если вы знаете имя процесса. Если вы не знаете точное имя процесса, тогда посмотрите все запущенные процессы в системе при помощи команды «Get-Process». После этой команды вам откроется список всех запущенных и остановленных процессов. Находите имя процесса, который хотите остановить, и пишете вот такую команду: «Stop-Process {Имя процесса}».
Windows PowerShell: скрипты
Функциональные команды — это удобный инструмент, но Windows PowerShell интересен тем, что с его помощью можно автоматизировать настройку Windows-системы или серверов при помощи скриптов.
В данном случае скрипт PowerShell — это набор команд, которые выполняются комплексно. Например, у вас есть ряд манипуляций с системой, которые вы проводите каждый день. В этом случае вы можете укомплектовать все манипуляции в один скрипт и запускать его, когда это нужно.
По сути, скрипты Windows PowerShell — это текстовые файлы со специальным расширением «.ps1». Их невозможно запустить «двойным щелчком мыши», так как они запускаются только в Windows PowerShell. Прежде чем писать собственные скрипты, нужно ознакомиться с политикой их написания, так как они очень строго регулируются. Политика написания скриптов доступна в самой программе Windows PowerShell при вводе команды «Get-ExecutionPolicy».
Заключение
Windows PowerShell — что это за программа? Это программа, которая помогает управлять серверами или операционной системой Windows. Обычному пользователю она вряд ли пригодится, но системному администратору лучше ее изучить. Она помогает автоматизировать многие операции над системой. Чтобы добиться автоматизации, придется один раз «попотеть» над скриптами, а потом запускать их в нужное время. Перед написанием скриптов нужно обязательно ознакомиться с требованиями к ним, иначе есть риск, что скрипт никогда не запустится в Windows PowerShell, а вы не будете знать почему.