Перейти к содержимому

Powershell ise как запустить

  • автор:

Как запустить Powershell: команды, скрипты, автоматизация.

Как запустить Powershell: команды, скрипты, автоматизация.

Мы открыли специальный раздел на форуме, http://www.linuxshop.ru/forum/f23-avtomatizacija-administrirovanija-windows.html где публикуем скрипты для windows автоматизирующие некоторые задачи, но windows не Linux и тут недостаточно в cmd просто записать фаил скрипт и запустить его ./ test . ps 1 он не исполнится т.к мы не в оболочке powershell это как bash или sh только в линукс она по умолчанию запущенны а тут нужна запустить.

Как запустить Powershell

Для запуска пуск-программ-стандартные- Windows PowerShell и тут есть два вариант PowerShell – консоль и PowerShell ISE удобная оболочка для запуска сценариев и их отладки. Для запуска повер шел из консоли: powershell_ise.exe

Запуск повершела в таск

powershell.exe -FILE путь _ к _ файлу .ps1

Команды:

Set-ExecutionPolicy

В PowerShell по умолчанию отключена возможность выполнять сценарии изменить настройка можно при помощи Set-ExecutionPolicy. Доступно 4 опции безопасности:

• Restricted — выполнение сценариев запрещено. Эта опция установлена по умолчанию. Команды в таком случае можно выполнять только в интерактивном режиме.

• All Signed — разрешено выполнение только сценариев, подписанных доверенным издателем.

• Remote Signed — разрешено выполнение любых сценариев, созданных локально, а сценарии, созданные на удаленных системах, выполняются только в том случае, если подписаны доверенным издателем.

• Unrestricted — разрешено выполнение абсолютно любых сценариев.

Запуск скриптов PowerShell

PowerShell — это новая командная оболочка для Windows, которая по задумкам Microsoft должна вытеснить и заменить cmd. По-умолчанию, эта оболочка уже идет в составе Windows 7 и выше. Если у вас более старая операционная система или вы просто хотите скачать более свежую версию PowerShell, сделать это можно здесь: https://technet.microsoft.com/en-us/scriptcenter/dd742419.aspx

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

Есть несколько различных способов запуска скрипта, ниже приведены основные:

  1. Запустить оболочку PowerShell и в ней запустить скрипт (ввести путь до файла и имя файла, например, так: C:\Scripts\test.ps1, или перейти в папку скрипта командой cd C:\Scripts и запустить его командой .\test.ps1) Оболочку можно найти и запустить множеством способов. Один из способов — через меню «Пуск». Для Windows 7 — нужно зайти во «Все программы» — «Стандартные» — «Windows PowerShell» и запустить оболочку «Windows PowerShell». Для Windows 10 — нужно найти группу на букву «W» и в ней вы найдете «Windows PowerShell».
  2. Запустить «Интегрированную среду сценариев Windows PowerShell ISE» — это программа — среда разработки, позволяющая редактировать и отлаживать скрипты PowerShell, которая так же есть по-умолчанию вместе с самим PowerShell. Запустив ее, нужно просто нажать кнопку «Открыть» или зайти в меню Файл — Открыть и выбрать нужный скрипт, затем нажать F5 или кнопку «Выполнить скрипт».Найти Windows PowerShell ISE можно там же, где и оболочку PowerShell — в меню «Пуск».
  3. Запустить стандартную коммандную строку и в ней написать:
    powershell -file (пример: powershell -file myscript.ps1)

Если вы раньше не запускали скрипты PowerShell, то скорее всего, вы получите сообщение: Не удается загрузить файл , так как выполнение скриптов запрещено для данной системы. Введите «get-help about_signing» для получения дополнительных сведений. Связано это с тем, что из соображений безопасности и недопущения случайного выполнения вредоносного кода, все скрипты должны быть подписаны цифровой подписью.

Как разрешить выполнение неподписанного скрипта PowerShell?

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

Set-ExecutionPolicy RemoteSigned -Scope Process

2. При запуске из стандартной коммандной строки использовать параметр -executionpolicy, т.е. запускать скрипт так:

powershell -executionpolicy RemoteSigned -file

Оба способа устанавливают политику только для текущего сеанса, при этом, политика безопасности выполнения скриптов PowerShell, прописанная в реестре, не будет изменена и останется прежней. Если вы хотите поменять политику безопасности выполнения скриптов «на постоянно», то используйте такой способ:

3. Разрешить запуск навсегда : запустить оболочку PowerShell от имени «Администратора», затем выполните команду:

Set-ExecutionPolicy RemoteSigned

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

Примечание: Если скрипт был загружен из интернета, то чтобы избежать запроса на подтверждение запуска, нужно вместо RemoteSigned использовать Bypass — полное отключение любых запросов и предупреждений.

Как запустить скрипт PowerShell в фоновом режиме?

Для этого достаточно использовать параметр запуска -WindowStyle, который может принимать значения: Normal, Minimized, Maximized и Hidden. Таким образом, чтобы запустить неподписанный скрипт в фоновом режиме, нужно выполнить команду:

powershell -executionpolicy RemoteSigned -WindowStyle Hidden -file

Так же можно еще при желании добавить -NonInteractive, чтобы скрипт не задавал никаких вопросов. Таким образом, скрипт выполнится незаметно для пользователя. Будmте внимательны, используя такой способ.

Запуск скрипта PowerShell c параметрами

Собственно запуск нужно делать как если бы вы запускали обычную программу или bat-файл с параметрами. Например, для запуска скрипта с параметрами из командной, можно написать такую команду:

powershell -executionpolicy RemoteSigned -file param1 param2 «еще один текстовый параметр»

В самом скрипте вы можете получить эти параметры так:

param ($var1, $var2, $var3) echo $var1, $var2, $var3

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

Как запустить скрипт PowerShell с помощью ярлыка?

Осуществить такую задачу можно двумя способами:

  1. Создать bat/cmd файл, в котором прописать команду для запуска скрипта (с параметрами вы ознакомились выше)
  2. Создать ярлык на PowerShell, который можно найти в папке c:\Windows\System32\WindowsPowerShell\v\ и в свойствах ярлыка в поле «Объект» дописать необходимые параметры.

Таким образом, например, чтобы запустить скрипт powershell при входе пользователя, можно просто создать ярлык, как описано во 2-м пункте и поместить его в автозагрузку. Так же, создание ярлыка одним из способов выше позволит легко запустить скрипт от имени администратора или от имени любого другого пользователя как обычную программу.

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

PowerShell

PowerShell — расширяемое средство автоматизации от Microsoft с открытым исходным кодом. Входит в состав операционной системы начиная с Windows 10
Windows PowerShell (ISE) — среда для создания, выполнения и тестирования скриптов PowerShell. Входит в состав в состав операционной системы начиная с Windows 10.

Как запустить оболочку PowerShell

Нажмите «Win+X».

Выберите пункт:

Для Windows 10 — «Windows PowerShell»

Для Windows 11 — «Windows Terminal»

При необходимости запустить PowerShell с повышенными привилегиями выберите пункт:

Для Windows 10 — «Windows PowerShell (администратор)» (Windows PowerShell (Admin))

Для Windows 11 — «Windows Terminal (Admin)»

Основы Windows PowerShell (создание и запуск скриптов

Основы Windows PowerShell (создание и запуск скриптов | установка | обновление версии | PowerShell ISE)

Основы Windows PowerShell (создание и запуск скриптов | установка | обновление версии | PowerShell ISE)

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

В данном видео, мы посмотрим:

— как выглядит оболочка PowerShell,

— уточним версию компонентов и обновим их до актуального состояния.

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

— обретем базовые знания, касающиеся синтаксиса PowerShell.

— разберем решение реальной задачи при помощи командлетов PowerShell.

Постановка задачи для PowerShell

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

osnovy windows powershell sozdanie i zapusk skriptov ustanovka obnovlenie versii powershell ise 2

Сравнение командной строки с PowerShell

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

osnovy windows powershell sozdanie i zapusk skriptov ustanovka obnovlenie versii powershell ise 3

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

Проверка версии PowerShell

Для полноценной работы с оболочкой, и использования доступных функций, необходимо понимать с какой версией PowerShell ведется работа. Для того что бы узнать какая версия PowerShell установлена, необходимо запустить команду $PSVersionTable. На слайде представлен вывод данной команды, после обновления. В нашем случае версия 4.0 Процесс обновления оболочки будет представлен в практической части видео.

osnovy windows powershell sozdanie i zapusk skriptov ustanovka obnovlenie versii powershell ise 4

PowerShell ISE

Для того что бы не навредить системе и проверить работоспособность скрипта, разработку, отладку и тестирование удобно проводить в специальной среде. PowerShell ISE дает такую возможность. Интерфейс приложения разделен на 3 части. В верхней части вы можете добавлять код, в нижней части получать вывод команд, а правая часть является своеобразной справкой. В ней вы можете подсмотреть необходимые для процесса командлеты. Более того в этой среде реализованы различные функции, такие как подсветка синтаксиса, конструктор команд и авто заполнение, что существенно облегчает программирование.

osnovy windows powershell sozdanie i zapusk skriptov ustanovka obnovlenie versii powershell ise 5

Построение команд в PowerShell

Теперь давайте немного поговорим о синтаксисе в PowerShell. Необходимо запомнить основной принцип построения командлетов. Вначале идет ГЛАГОЛ, далее СУЩЕСТВИТЕЛЬНОЕ и уже через тире, вы можете ввести параметры для этого командлета. На слайде представлен сложный командлет, но принцип остается неизменным. Сначала мы запрашиваем вывод справки Get-help, а затем указываем для какой команды мы хотим это сделать Get-date. Используя PS ISE, вы сможете получать список доступных параметров до ввода самого параметра, просто введя тире и выбрав необходимы параметр из списка.

osnovy windows powershell sozdanie i zapusk skriptov ustanovka obnovlenie versii powershell ise 6

Особенности запуска скриптов в PowerShell

Необходимо упомянуть об особенностях запуска скриптов PowerShell. Данное средство администрирования и автоматизации обладает очень высоким потенциалом и является мощным инструментом, поэтому разработчиками было принято решение ограничить запуск скриптов по умолчанию. Существует 4-е основных политики безопасности, регулирующих запуск скриптов на целевом устройстве. Вы можете ознакомиться с ними на данном слайде. У каждой политики свои особенности, и они применимы для разных сценариев. В нашем случае, для практической работы мы разрешим выполнение неподписанных скриптов используя политику «unrestricted»

osnovy windows powershell sozdanie i zapusk skriptov ustanovka obnovlenie versii powershell ise 7

Создание и запуск скриптов PowerShell на практике

Перейдем непосредственно к демонстрации. В качестве стенда для практической работы будет использован сервер с Windows Server 2016, с установленной ролью активного каталога и клиентская машина на windows 10.

osnovy windows powershell sozdanie i zapusk skriptov ustanovka obnovlenie versii powershell ise 8

  1. На контроллере домена смотрим структуру AD, определяем уч. записи компьютеров в каталоге, запоминаем.
  2. На клиентской машине запускаем PS, смотрим версию, обновляем до актуальной, обновляем справку.
  3. Устанавливаем RSAT для возможности подключения AD модуля в PS.
  4. Выставляем необходимые настройки политики для запуска скриптов.
  5. Сооружаем скрипт, позволяющий получить список машин из определенной OU по фильтру имени, запускаем, получаем результат, выгружаем в TXT.

Bonus: получение справки по командам get-help get-* с параметром «example» и «Full». Для вывода примеров использования команды.

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

Спасибо за внимание!

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

Список временных меток:

  • Обзор видеоурока «Основы Windows PowerShell»
  • Постановка задачи для PowerShell
  • Сравнение командной строки с PowerShell
  • Проверка версии PowerShell
  • PowerShell ISE
  • Построение команд в PowerShell
  • Особенности запуска скриптов в PowerShell
  • Создание и запуск скриптов PowerShell на практике

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *