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

Первая программа на PowerShell

Разработчику Архитектору

Play ITЗагрузка интерактивного демо…

Play ITЗагрузка интерактивного демо…


Первая программа на PowerShell

Где применяют PowerShell

PowerShell — shell и язык автоматизации Windows (и кроссплатформенно): команды возвращают объекты, а не только текст. Им пользуются админы, DevOps и разработчики .NET для скриптов установки, CI и управления Azure.

Первая программа — Write-Host / Write-Output в .ps1 файле; дальше — модули, конвейер |, remoting.

Раздел: 5-26-powershell.


Что получится

Открытый терминал PowerShell, файл скрипта, запуск политикой RemoteSigned (локально).


Как открыть PowerShell

  1. Нажмите клавиши Win + R на клавиатуре для открытия окна "Выполнить".
  2. Запуск PowerShell — Win+R, затем:
powershell
  1. Откроется окно терминала с приглашением к вводу команд, готовое к работе.

Альтернативный способ через меню Пуск:

  1. Нажмите кнопку "Пуск" (значок Windows).
  2. Начните печатать слово PowerShell.
  3. Выберите пункт "Windows PowerShell" или "Windows Terminal" в результатах поиска.
  4. Щелкните по найденному приложению для запуска.
Перед запуском .ps1 и команд от агента

Remove-Item -Recurse -Force, IEX (DownloadString …), снятие ExecutionPolicy — Опасные скрипты.


Как написать программу

Для создания первой программы потребуется текстовый редактор. Стандартные возможности системы включают Блокнот (Notepad) или более продвинутые инструменты вроде Visual Studio Code.

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

  1. Создание файла. Откройте любой текстовый редактор. Если используется Блокнот, выберите в меню "Файл" -> "Создать".

  2. Написание кода. Введите следующую строку текста в пустой файл:

Write-Host "Привет, мир!"

Эта команда вызывает встроенную функцию вывода, которая отображает текст в окне терминала. Строка внутри кавычек является аргументом функции.

  1. Сохранение файла. Выберите в меню "Файл" пункт "Сохранить как".

    • Укажите место сохранения, например, рабочую папку пользователя.
    • В поле "Имя файла" введите название с расширением .ps1, например Hello.ps1.
    • В поле "Тип файла" выберите опцию "Все файлы (.)". Это критически важно, чтобы система не добавила скрытое расширение .txt.
    • Нажмите кнопку "Сохранить".
  2. Проверка расширения. Убедитесь, что имя файла действительно заканчивается на .ps1. Если вы видите два расширения (например, Hello.ps1.txt), переименуйте файл, удалив лишнюю часть .txt.


Как запустить написанную программу

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

Настройка прав доступа:

  1. Откройте PowerShell от имени администратора (правый клик по ярлыку -> "Запуск от имени администратора").
  2. Введите команду для изменения политики безопасности:
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
  1. Подтвердите изменение, нажав букву Y и клавишу Enter.

Выполнение скрипта

  1. Откройте PowerShell.
  2. Перейдите в каталог со скриптом:
cd C:\Users\Timur\Desktop
  1. Запуск:
.\Hello.ps1

Частые ошибки

СимптомПричина
running scripts is disabledНужен Set-ExecutionPolicy RemoteSigned
Команда не найденаНе тот каталог — проверьте Get-Location
Кириллица ломаетсяСохраните .ps1 в UTF-8 with BOM

Что попробовать

  1. Параметр: param([string]$Name) в начале скрипта.
  2. Get-ChildItem — список файлов в папке.
  3. Модуль Import-Module для переиспользования функций.

После первой программы: следующий шаг

Когда Hello.ps1 уже запускается стабильно, переходите к маленькой прикладной задаче:

  • принять параметр (param([string]$Name));
  • прочитать данные из файла;
  • вывести результат в JSON или CSV;
  • обработать ошибку через try/catch.

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

Рекомендуемое продолжение:


Частые ошибки

СимптомПричина
running scripts is disabledНужен Set-ExecutionPolicy RemoteSigned
Команда не найденаНе тот каталог — проверьте Get-Location
Кириллица ломаетсяСохраните .ps1 в UTF-8 with BOM

Что попробовать

  1. Параметр: param([string]$Name) в начале скрипта.
  2. Get-ChildItem — список файлов в папке.
  3. Модуль Import-Module для переиспользования функций.

В подборках

Статья входит в тематические подборки и блок "С чего начать?" на главной. Соседние шаги того же маршрута:

Первые шаги (маршрут подборки) — Первая программа на Bash, Первая программа на 1С, Первая программа на Julia, Первая программа на F#, Первая программа на R, Первая программа на С.