Windows powershell что за программа для чего нужна

Общие сведения о PowerShell

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

Более подробно конвейеры будут рассматриваться в других руководствах этой серии.

И даже после этого может потребоваться немного обработать результаты.

Для чего предназначена оболочка PowerShell?

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

Существует гораздо больше областей использования, но вышеприведенный список дает понять, что PowerShell удалось добиться значительного прогресса.

Кто использует PowerShell?

PowerShell является очень мощным средством и может быть полезно огромному числу пользователей с различными ролями. Традиционно PowerShell использовали сотрудники с ролью системного администратора, но теперь с этим средством активно работают люди, называющие себя инженерами DevOps, Cloud Ops и даже разработчиками.

Командлеты PowerShell

В состав PowerShell входят сотни предустановленных команд. Команды PowerShell называются командлетами. Слово cmdlet произносится как «командлет».

Использование командлетов для изучения PowerShell

Первое знакомство с PowerShell может показаться пугающим, так как кажется, что предстоит очень многому научиться. Однако изучение PowerShell происходит постепенно и по мере необходимости.

PowerShell содержит командлеты, которые помогут вам открыть для себя этот инструмент. С помощью этих трех командлетов можно узнать, какие команды доступны, что они делают и с какими типами они работают.

С помощью этих команд можно узнать о PowerShell практически все, что нужно.

Команда

Глагол является важным понятием в PowerShell. Это стандарт именования, которому следует большинство командлетов. Этого стандарта должны придерживаться и вы в процессе написания собственных команд. Суть в том, что глагол означает действие, которое будет выполняться, например чтение или изменение данных. В PowerShell имеется стандартизированный список глаголов. Чтобы получить полный список всех возможных команд, выполните командлет Get-Verb :

В качестве выходных данных будет выведен длинный список глаголов. Следует отметить, что в ответе приводится дополнительный контекст о действии, выполняемом глаголом. Вот как выглядит первая строка выходных данных:

Поиск команд с помощью командлета Get-Command

Командлет Get-Command возвращает список всех доступных команд, установленных в системе. Этот список довольно большой. Чтобы упростить поиск команд, рекомендуется ограничить объем возвращаемой информации. Можно отфильтровать ответ с помощью параметров или вспомогательных командлетов.

Фильтрация по имени

Выходные данные Get-Command можно отфильтровать с помощью различных параметров. В этом случае фильтрация работает как запрос определенного свойства в команде. Суть в том, что необходимо указать свойство, которое будет условием фильтрации, после чего следует задать строку, с которой нужно выполнить сопоставление. В итоге вы получите сравнение, которое выглядит следующим образом:

Фильтрация по существительным и глаголам

При фильтрации только по глаголу или только по существительному может быть выведен слишком большой результирующий набор. Чтобы сузить область поиска, рекомендуется объединить два параметра, как показано в примере ниже:

Результат выглядит следующим образом:

Таким образом, вы немного сократили объем выходных данных, так как знали глагол и то, что он вызывает.

Использование вспомогательных командлетов для фильтрации результатов

Выполнять фильтрацию можно не только с помощью параметров, но и с помощью команд. Ниже приведены некоторые команды, которые могут работать в качестве фильтров:

Результатом выполнения приведенной выше команды являются три первые верхние команды. Результат имеет следующий вид:

Стоит рассмотреть эту команду более подробно, так как с ее помощью можно выполнять гораздо больше задач (см. статью Select-Object).

Изучение объектов с помощью Get-Member

Научившись находить нужный командлет, вы, возможно, захотите узнать больше о результате его выполнения, то есть о выходных данных. Выходные данные представляют интерес по нескольким причинам, в число которых входят следующие:

Поиск по типу

Другой способ поиска нужной команды заключается в поиске команд, работающих с одним и тем же типом. При выполнении Get-Member вы получили возвращаемый тип в виде первой строки ответа, как показано ниже:

Теперь вы можете использовать этот тип и искать команды следующим образом:

Результатом выполнения приведенной выше команды является список команд, которые работают исключительно с типом Process :

Как видите, зная тип команды, можно значительно сузить область поиска интересующих команд.

Упражнение. Вызов первой команды

В этом упражнении вы узнаете, как выполнить первую команду.

Запустите консоль PowerShell, введя pwsh :

Результат будет выглядеть примерно так:

Поздравляем! Вы успешно выполнили первую команду и смогли получить сведения об установленной в системе версии PowerShell.

Упражнение. Поиск связанных команд

Цель этого упражнения — получить дополнительные сведения о команде. В итоге вы также узнаете, с каким типом работает команда, и какие другие аналогичные команды работают с тем же типом.

Запустите оболочку PowerShell.

Выполните команду Get-Process :

Результат будет примерно таким:

Результат будет примерно таким:

Итоги

Источник

Для чего нужен Windows PowerShell – как его использовать

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

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

Что такое Windows PowerShell

Как следует из названия, Windows PowerShell – это оболочка командной строки. Она была разработана специально для использования системными администраторами и может использоваться для выполнения всех команд cmd.exe.

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

Давайте подробно рассмотрим, какие функции и преимущества предлагает эта оболочка от Microsoft:

Как запустить Windows PowerShell

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

Более современный способ – доступный в Windows 10 – щелкнуть правой кнопкой мыши по меню «Пуск» и выбрать соответствующий пункт из меню «Опытного пользователя»

Как взаимодействовать с Windows PowerShell

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

Мы можем использовать символы переправления > для отправки вывода в файл или >> для добавления в файл. PowerShell использует псевдонимы для связи команд cmd.exe со своими командлетами. Например, команда cd является псевдонимом для командлета set-location, точно так же, как dir является псевдонимом для командлета get-children.

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

Одна из сильных сторон этой оболочки – её командлеты. Каждый командлет представлен «глаголом», за которым следует тире и существительное.

Чтобы просмотреть полный список всех доступных командлетов, введите get-command. Чтобы получить информацию о конкретном командлете, введите get-help и имя командлета.

Что такое Windows PowerShell ISE

Windows PowerShell ISE (интегрированная среда сценариев) – это приложение, появившееся в PowerShell 2.0. Она позволяет запускать команды и писать, тестировать и отлаживать сценарии в едином графическом интерфейсе пользователя на базе Windows.

Этот ISE включает командную панель, одну для сценариев и одну для вывода. Панель вывода отображает результаты команд, запущенных в двух других панелях. Кроме того, графическое окружение можно изменить, выбрав расположение блоков.

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

Источник

Что такое Windows PowerShell и с чем его едят? Часть 1: основные возможности

Исторически утилиты командной строки в Unix-системах развиты лучше чем в Windows, однако с появлением нового решения ситуация изменилась.

Windows PowerShell позволяет системным администраторам автоматизировать большинство рутинных задач. С ее помощью можно менять настройки, останавливать и запускать сервисы, а также производить обслуживание большинства установленных приложений. Воспринимать синее окошко как еще один интерпретатор команд было бы неправильно. Такой подход не отражает сути предложенных корпорацией Microsoft инноваций. На самом деле возможности Windows PowerShell гораздо шире: в небольшом цикле статей мы попробуем разобраться, чем решение Microsoft отличается от более привычных нам средств.

Основные возможности

Windows PowerShell позволяет:

Оболочка и среда разработки

Существует Windows PowerShell в двух ипостасях: помимо эмулятора консоли с командной оболочкой есть интегрированная среда сценариев (Integrated Scripting Environment — ISE). Чтобы получить доступ к интерфейсу командной строки достаточно выбрать соответствующий ярлык в меню Windows или запустить powershell.exe из меню «Выполнить». На экране появится синее окошко, заметно отличающееся по возможностям от допотопного cmd.exe. Там есть автодополнение и другие фишки, привычные пользователям командных оболочек для Unix-систем.

Для работы с оболочкой нужно запомнить некоторые сочетания клавиш:

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

Командлеты

Помимо Get в командлетах для обозначения действий используются и другие глаголы (и не только глаголы, строго говоря). В списке ниже мы приведем несколько примеров:

Add — добавить;
Clear — очистить;
Enable — включить;
Disable — выключить;
New — создать;
Remove — удалить;
Set — задать;
Start — запустить;
Stop — остановить;
Export — экспортировать;
Import — импортировать.

Есть системные, пользовательские и опциональные командлеты: в результате выполнения все они возвращают объект или массив объектов. К регистру они не чувствительны, т.е. с точки зрения интерпретатора команд нет разницы между Get-Help и get-help. Для разделения используется символ ‘;’, но ставить его обязательно только если в одной строке выполняется несколько командлетов.

Командлеты Windows PowerShell группируются в модули (NetTCPIP, Hyper-V и т.д.), а для поиска по объекту и действию существует командлет Get-Command. Показать справку по нему можно так:

Справка в Windows PowerShell обновляется командлетом Update-Help. Если строка команд получается слишком длинной, аргументы командлета можно перенести на следующую, написав служебный символ ‘`’ и нажав Enter — просто закончить писать команду на одной строке и продолжить на другой не получится.

Ниже приведем несколько примеров распространенных командлетов:

Get-Process — показать запущенные в системе процессы;
Get-Service — показать службы и их статус;
Get-Content — вывести содержимое файла.

Для часто используемых командлетов и внешних утилит в Windows PowerShell есть короткие синонимы — алиасы (от англ. Alias). Например, dir — алиас Get-ChildItem. Есть в списке синонимов и аналоги команд из Unix-систем (ls, ps и т.д.), а командлет Get-Help вызывается командой help. Полный список синонимов можно посмотреть с помощью командлета Get-Alias:

Сценарии, функции, модули и язык PowerShell

Restricted — запуск сценариев запрещен (по умолчанию);
AllSigned — разрешен только запуск подписанных доверенным разработчиком сценариев;
RemoteSigned — разрешен запуск подписанных и собственных сценариев;
Unrestricted — разрешен запуск любых сценариев.

У администратора есть два варианта действий. Наиболее безопасный предполагает подписание скриптов, но это довольно серьезное колдунство — мы будем разбираться с ним в следующих статьях. Сейчас пойдем по пути наименьшего сопротивления и поменяем политику:

PowerShell для этого придется запустить от имени администратора, хотя с помощью специального параметра можно изменить политику и для текущего пользователя.

Пишутся скрипты на объектно-ориентированном языке программирования, команды которого именуются по тому же принципу, что и рассмотренные ранее командлеты: «Действие-Объект» («Глагол-Существительное»). Основное его предназначение — автоматизация задач администрирования, но это полноценный интерпретируемый язык, в котором есть все необходимые конструкции: условный переход, циклы, переменные, массивы, объекты, обработка ошибок и т.д. Для написания сценариев годится любой текстовый редактор, но удобнее всего запустить Windows PowerShell ISE.

Конвейеры

В последнем примере мы применили знакомую пользователям оболочек для Unix-систем конструкцию. В Windows PowerShell вертикальная черта также позволяет передать выход одной команды на вход другой, но в реализации конвейера есть и существенная разница: речь здесь идет уже не о наборе символов или каком-то тексте. Встроенные командлеты или пользовательские функции возвращают объекты или массивы объектов, а также могут получать их на входе. Как в Bourne shell и его многочисленных последователях, в PowerShell с помощью конвейера упрощается выполнение сложных задач.

Простейший пример конвейера выглядит так:

Сначала выполняется командлет Get-Service, а потом все полученные им службы передаются на сортировку по свойству Status командлету Sort-Object. В какой именно аргумент передается результат работы предыдущего участка конвейера, зависит от его типа — обычно это InputObject. Подробнее этот вопрос будет рассматриваться в посвященной языку программирования PowerShell статье.

При желании цепочку можно продолжить и передать результат работы Sort-Object еще одному командлету (выполняться они будут слева направо). Кстати, пользователям Windows доступна и привычная всем юниксоидам конструкция для постраничного вывода:

Запуск задач в фоновом режиме

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

Start-Job — запуск фоновой задачи;
Stop-Job — остановка фоновой задачи;
Get-Job — просмотр списка фоновых задач;
Receive-Job — просмотр результата выполнения фоновой задачи;
Remove-Job — удаление фоновой задачи;
Wait-Job — перевод фоновой задачи обратно в консоль.

Для запуска фоновой задачи мы используем командлет Start-Job и в фигурных скобках указываем команду или набор команд:

Фоновыми задачами в Windows PowerShell можно манипулировать, зная их имена. Для начала научимся их отображать:

Теперь покажем результат работы задания Job1:

Всё довольно просто.

Удаленное выполнение команд

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

Версии PowerShell

Также можно воспользоваться командлетом:

То же самое делается и с помощью командлета Get-Host. На самом деле вариантов множество, но для их применения нужно изучить язык программирования PowerShell, чем мы и займемся в следующей статье.

Итоги

Источник

Windows PowerShell: что это за программа, как запустить и использовать

Windows PowerShell — это программа, которая пригодится системным администраторам Windows-серверов или тем, кто хочет «покопаться» в тонких настройках этой операционной системы. При помощи этой программы можно:

запускать исполнение скриптов, влияющих на работу системы;

настраивать, останавливать или активировать внутренние сервисы и службы;

конфигурировать большинство программ, установленных на компьютере.

Многие пользователи компьютеров знают или слышали, что у Linux-систем очень развита конфигурация системы через терминал и командные скрипты. У Виндов с т акой способ конфигурации был слабо развит, пока не появилась программа Windows PowerShell.

Windows PowerShell — что это за программа?

Windows PowerShell — это оболочка для стандартной командной строки и п о совместительств у я зык сценариев для администрирования системы. Эта программа создана на основе «.NET Framework». По сути, эт а программа нужна для автоматизирования администрирования операционной системы. Она подходит для системных администраторов и для «продвинутых» пользователей, которые не боятся самостоятельно конфигурировать ОС.

Как запустить Windows PowerShell?

Windows PowerShell — это утилита, которая уже встроена в систему. Если у вас не «обрезанная» операционная система, тогда она уже есть в компьютере. «Обрезанная система» — это операционная система, которая была «обработана» опытными пользователями. То ест ь о ни удалили все лишнее из ОС, чтобы сделать ее «легче». Как правило, «обрезанные» системы — это пиратские копии Windows.

Если у вас обычная система, тогда запустить Windows PowerShell очень просто. Воспользуйтесь любым удобным способом:

Через утилиту «Выполнить». Откройте меню «Выполнить» и введите в него команду «powershell». Можно воспользоваться более «продвинутой» версией «PowerShell ISE». Для этого тут же можно ввести команду «PowerShell ISE». «ISE»-версия более предпочтительна, так как имеет более широкие возможности и более удобна.

Как используется программа Windows PowerShell?

Windows PowerShell: скрипты

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

По сути, скрипты Windows PowerShell — это текстовые файлы со специальным расширением «.ps1». Их невозможно запустить «двойным щелчком мыши», так как они запускаются только в Windows PowerShell. Прежде чем писать собственные скрипты, нужно ознакомит ь ся с политикой их написания, так как они очень строго регулируются. Политика написания скриптов доступна в самой программе Windows PowerShell при вводе команды «Get-ExecutionPolicy».

Заключение

Мы будем очень благодарны

если под понравившемся материалом Вы нажмёте одну из кнопок социальных сетей и поделитесь с друзьями.

Источник

Что такое Windows PowerShell и для чего он нужен

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

Что умеет этот инструмент администрирования? Много чего. С его помощью системные администраторы и опытные пользователи могут управлять процессами, службами, файловыми хранилищами, аккаунтами и даже серверами. Также оболочка позволяет запускать внешние команды, работать с объектами .NET, COM и XML, проделывать разные трюки и т.п., создавать и выполнять собственные сценарии. Кстати, для написания скриптов в Windows предусмотрена специальная графическая консоль ISE, являющаяся своего рода дополнением к основной оболочке PowerShell.

Как и консоль CMD, оболочка PowerShell имеет свой набор команд, именуемых командлетами. Утилита распознает многие из команд CMD, но в целом синтаксис языка, определения командлетов и их параметров отличаются от того, что пользователи привыкли видеть в обычной командной строке. Кроме того, знакомые команды вроде dir, cd, copy и т.п., прекрасно понимаемые PowerShell, на самом деле являются псевдонимами. Например, команда Dir, служащая для просмотра файловой системы соответствует «родному» командлету Get-ChildItem. Псевдонимы или как принято говорить, алиасы, служат чисто для удобства.

Разобраться с PowerShell начинающему пользователю, особенно если тот незнаком хотя бы с основами обычной командной строки, будет непросто. А руководств и справочников, достаточно понятных и простых для усвоения, не так уж и много. Есть неплохое руководство, написанное Франком Кохом, с которым мы рекомендуем ознакомиться, если вы всё же решитесь приступить к изучению скриптового языка PowerShell. Ну, и конечно, собственная справочная системы оболочки.

Она мощная и развёрнутая, с множеством конкретных примеров. Пользоваться ей достаточно просто. Основная информация по справочной системы выводится командлетом Get-Help. Командлет Get-Command выводит список всех доступных команд.

Для получения справки по конкретному командлету или алиасу используется связка get-help командлет. Например, команда get-help get-process выведет основную справку по использованию командлета get-process, отвечающего за вывод списка текущих процессов. Передав же ей параметры –detailed, -examples, -full или –online, можно будет получить самые подробные сведения обо всех его нюансах.

Источник

Понравилась статья? Поделиться с друзьями:

Не пропустите наши новые статьи:

  • Windows powershell сам запускается что делать
  • Windows powershell для чего нужен
  • Windows powershell windows 10 что это
  • windows powershell modules что это
  • windows powershell ise что это

  • Операционные системы и программное обеспечение
    0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest
    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии