Как открыть файл ps1

Обновлено: 03.07.2024

В этой статье описывается, как создавать, редактировать, запускать и сохранять сценарии на панели сценариев.

Как создавать и запускать скрипты

Вы можете открывать и редактировать файлы Windows PowerShell на панели сценариев. Конкретные типы файлов, представляющие интерес для Windows PowerShell, — это файлы сценариев (.ps1), файлы данных сценариев (.psd1) и файлы модулей сценариев (.psm1). Синтаксис этих типов файлов окрашен в редакторе панели сценариев. Другими распространенными типами файлов, которые вы можете открыть на панели сценариев, являются файлы конфигурации ( .ps1xml ), файлы XML и текстовые файлы.

Политика выполнения Windows PowerShell определяет, можете ли вы запускать сценарии и загружать профили и файлы конфигурации Windows PowerShell. Политика выполнения по умолчанию Restricted запрещает запуск всех сценариев и загрузку профилей. Чтобы изменить политику выполнения, чтобы разрешить загрузку и использование профилей, см. Set-ExecutionPolicy и about_Signing.

Чтобы создать новый файл сценария

На панели инструментов нажмите «Создать» или в меню «Файл» нажмите «Создать». Созданный файл появится на новой вкладке файла на текущей вкладке PowerShell. Помните, что вкладки PowerShell видны только тогда, когда их несколько. По умолчанию создается файл типа script ( .ps1 ), но его можно сохранить с новым именем и расширением. На одной вкладке PowerShell можно создать несколько файлов сценариев.

Чтобы открыть существующий скрипт

На панели инструментов нажмите «Открыть» или в меню «Файл» нажмите «Открыть». В диалоговом окне «Открыть» выберите файл, который хотите открыть. Открытый файл появится в новой вкладке.

Чтобы закрыть вкладку скрипта

Нажмите значок "Закрыть" (X) на вкладке с файлом, который хотите закрыть, или выберите меню "Файл" и нажмите "Закрыть".

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

Чтобы отобразить путь к файлу

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

Чтобы запустить скрипт

На панели инструментов нажмите "Выполнить сценарий" или в меню "Файл" выберите "Выполнить".

Чтобы запустить часть скрипта

  1. На панели сценариев выберите часть сценария.
  2. В меню "Файл" нажмите "Выполнить выбор" или на панели инструментов нажмите "Выполнить выбор".

Чтобы остановить запущенный скрипт

Есть несколько способов остановить работающий скрипт.

  • Нажмите «Остановить операцию» на панели инструментов.
  • Нажмите CTRL + BREAK.
  • Выберите меню «Файл» и нажмите «Остановить операцию».

Нажатие CTRL + C также работает, если в данный момент не выделен какой-либо текст, и в этом случае CTRL + C сопоставляется с функцией копирования для выделенного текста.

Как писать и редактировать текст на панели сценариев

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

Ввод текста на панели сценариев

  1. Переместите курсор на панель сценариев, щелкнув в любом месте области сценариев или нажав Перейти к области сценариев в меню "Вид".
  2. Создайте сценарий. Подсветка синтаксиса и завершение табуляцией расширяют возможности редактирования в Windows PowerShell ISE.
  3. Дополнительные сведения об использовании функции завершения табуляции для облегчения набора текста см. в разделе Как использовать автодополнение табуляции на панели сценариев и панели консоли.

Чтобы найти текст на панели сценариев

  1. Чтобы найти текст в любом месте, нажмите CTRL + F или в меню "Правка" нажмите "Найти в скрипте".
  2. Чтобы найти текст после курсора, нажмите F3 или в меню "Правка" нажмите "Найти далее в скрипте".
  3. Чтобы найти текст перед курсором, нажмите SHIFT + F3 или в меню "Правка" нажмите "Найти предыдущий в скрипте".

Чтобы найти и заменить текст на панели сценариев

Нажмите CTRL + H или в меню "Правка" нажмите "Заменить в скрипте". Введите текст, который вы хотите найти, и текст замены, затем нажмите клавишу ВВОД .

Чтобы перейти к определенной строке текста на панели сценариев

На панели сценариев нажмите CTRL + G или в меню "Правка" выберите "Перейти к строке".

Введите номер строки.

Чтобы скопировать текст в области сценариев

На панели сценариев выберите текст, который хотите скопировать.

Нажмите CTRL + C или на панели инструментов щелкните значок "Копировать" или в меню "Правка" выберите "Копировать".

Чтобы вырезать текст на панели сценариев

  1. На панели сценариев выберите текст, который нужно вырезать.
  2. Нажмите CTRL + X или на панели инструментов нажмите значок "Вырезать" или в меню "Правка" нажмите "Вырезать".

Чтобы вставить текст в панель сценариев

Нажмите CTRL + V или на панели инструментов щелкните значок "Вставить" или в меню "Правка" выберите "Вставить".

Чтобы отменить действие на панели сценариев

Нажмите CTRL + Z или на панели инструментов щелкните значок "Отменить" или в меню "Правка" выберите "Отменить".

Чтобы повторить действие на панели сценариев

Нажмите CTRL + Y или на панели инструментов нажмите значок "Повторить" или в меню "Правка" нажмите "Повторить".

Как сохранить скрипт

Рядом с именем скрипта появляется звездочка, чтобы отметить файл, который не был сохранен с момента его изменения. Звездочка исчезнет, ​​когда файл будет сохранен.

Чтобы сохранить сценарий

Нажмите CTRL + S или на панели инструментов щелкните значок "Сохранить" или в меню "Файл" выберите "Сохранить".

Чтобы сохранить сценарий и назвать его

  1. В меню "Файл" нажмите "Сохранить как". Появится диалоговое окно «Сохранить как».
  2. В поле Имя файла введите имя файла.
  3. В поле "Тип файла" выберите тип файла. Например, в поле "Тип файла" выберите "Сценарии PowerShell ( *.ps1 )".
  4. Нажмите "Сохранить".

Чтобы сохранить сценарий в кодировке ASCII

По умолчанию интегрированная среда сценариев Windows PowerShell сохраняет новые файлы сценариев ( .ps1 ), файлы данных сценариев ( .psd1 ) и файлы модулей сценариев ( .psm1 ) в формате Unicode (BigEndianUnicode) по умолчанию. Чтобы сохранить сценарий в другой кодировке, например ASCII (ANSI), используйте методы Save или SaveAs объекта $psISE.CurrentFile.

Следующая команда сохраняет новый сценарий как MyScript.ps1 с кодировкой ASCII.

Следующая команда заменяет текущий файл скрипта файлом с тем же именем, но в кодировке ASCII.

Следующая команда получает кодировку текущего файла.

Windows PowerShell ISE поддерживает следующие параметры кодировки: ASCII, BigEndianUnicode, Unicode, UTF32, UTF7, UTF8 и по умолчанию. Значение параметра «По умолчанию» зависит от системы.

Windows PowerShell ISE не изменяет кодировку файлов сценариев при использовании команд "Сохранить" или "Сохранить как".

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

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

Почему мой скрипт PowerShell не запускается двойным щелчком, как скрипт vbs или bat?

Действие по умолчанию при двойном щелчке по ps1-файлу — открыть его в Блокноте или другом текстовом редакторе или редакторе сценариев/кода, который может быть у вас установлен, например Visual Studio Code.

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

Отчасти это также удобная функция, позволяющая легко проверять или редактировать код, поскольку многие сценарии не выполняются вручную, а автоматизируются с помощью запланированных задач, сценариев входа или реализованы как вызываемые функции (например, команды Get и Set).

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

Как открыть PowerShell?

Быстрый способ открыть PowerShell — щелкнуть правой кнопкой мыши значок меню «Пуск» и выбрать; Windows PowerShell.

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

Если нужного параметра нет в списке, просто введите «PowerShell» сразу после открытия меню «Пуск» или в поле поиска.

Еще один вариант — прокрутить меню «Пуск» вниз до папки Windows PowerShell и запустить ее оттуда.

Однако в некоторых случаях нет необходимости вручную запускать PowerShell для выполнения скрипта (см. следующую запись).

Щелкните правой кнопкой мыши в меню


Нажмите правой кнопкой мыши на меню "Пуск", чтобы быстро открыть PowerShell.

Как легко выполнить сценарий PowerShell?

Самый простой способ запустить сценарий PowerShell, который допускает прямое выполнение, — щелкнуть по нему правой кнопкой мыши и выбрать; Запуск с PowerShell.

Проводник — справа нажмите на файл ps1 - Запустить с помощью PowerShell

Если у вас есть только код, например, с веб-страницы, вы часто можете просто скопировать/вставить код прямо в окно PowerShell.

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

Способ 1: меню "Файл"

  1. Перейдите к папке, в которой вы сохранили ps1-файл, в проводнике и выберите:
    Файл-> Открыть Windows PowerShell
  2. Введите (часть) имя скрипта.
  3. Нажмите клавишу TAB для автозаполнения, а затем имя.
    • Примечание. Делайте это, даже если вы ввели имя полностью. Это связано с тем, что файлы в PowerShell должны начинаться с косой черты ( .\ ), и нажатие TAB добавит ее. Очевидно, вы также можете вручную ввести .\ перед именем файла, но использование TAB может быть более удобным.В качестве альтернативы можно ввести полный путь к файлу.
  4. Нажмите ENTER, чтобы выполнить сценарий.

Проводник — открыть Windows PowerShell

Способ 2: перетаскивание

  1. Открыть окно PowerShell
  2. Перетащите сценарий из проводника или с рабочего стола в окно PowerShell.
  3. Убедитесь, что окно PowerShell активно (нажмите на строку заголовка, чтобы убедиться в этом).
  4. Нажмите ENTER, чтобы выполнить сценарий.

Ошибка безопасности «нет цифровой подписи» для загруженных скриптов

При попытке выполнить сценарий PowerShell, загруженный из Интернета, могут появиться ошибки, подобные этой;

PowerShell SecurityError: невозможно загрузить . Файл не имеет цифровой подписи». /><br /></p>
<p><img class=

В большинстве случаев это можно решить, изменив две вещи;

  • Разблокировать скрипт
    Щелкните скрипт правой кнопкой мыши и выберите "Свойства". В диалоговом окне "Свойства", если оно доступно, установите флажок "Разблокировать" и нажмите "ОК".
  • Set-ExecutionPolicy
    Если это все еще не работает, введите следующее в окне PowerShell;
    Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser
    Если вы не можете его изменить, ваш администратор, скорее всего, ограничил использование сценариев PowerShell. Для получения дополнительной информации см. также; Set-ExecutionPolicy.

Проводник — Свойства — Разблокировать - Файл пришел с другого компьютера.


После загрузки скрипта не забудьте разблокировать его.

Сценарии Dot-Source в вашем профиле PowerShell

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

При использовании точечного источника сценарий автоматически загружается (но не выполняется!) при запуске PowerShell. Это означает, что вы можете напрямую ввести имя командлета (функции) PowerShell, содержащегося в скрипте.

Чтобы создать скрипт в вашем профиле PowerShell, откройте PowerShell и введите;
блокнот $профиль

Если Блокнот предложит вам, что файл не существует и хотите ли вы его создать, выберите «Да». Если вы получили сообщение об ошибке «Система не может найти указанный путь», закройте «Блокнот» и вместо этого введите следующую команду;
New-Item -Path $profile -ItemType "file" -Force

В Блокноте введите точку, пробел и полный путь к скрипту. Например;
. "C:\Scripts\MyScript.ps1"

Сохраните и закройте Блокнот, а затем перезапустите PowerShell. Теперь вы можете напрямую ввести любую функцию, содержащуюся в файле MyScript.ps1.

Блокнот — профиль PowerShell - Несколько сценариев с точечным источником.


Вы можете использовать несколько сценариев в своем профиле PowerShell.

Примечание.
По умолчанию ваш профиль PowerShell хранится в файле с именем Microsoft.PowerShell_profile.ps1 .

Чтобы узнать его точное местоположение, используйте следующую команду PowerShell;
Получить элемент $profile

Создание запланированной задачи, которая выполняет сценарий PowerShell

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

  1. Откройте планировщик заданий.
    Просто введите «Планировщик заданий» сразу после открытия меню «Пуск» или в поле поиска.
  2. На панели «Действия» справа выберите «Создать простую задачу…».
  3. Укажите имя запланированной задачи и нажмите "Далее".
  4. Выберите триггер для запуска задачи. Например, «Ежедневно» или «При входе в систему».
  5. Для действия выберите: Запустить программу.
  6. Заполните форму Запустить программу следующим образом;
    • Программа/скрипт: PowerShell
    • Добавить аргументы (необязательно): путь к вашему скрипту PowerShell, включая все параметры командной строки.
    • Начать через (необязательно):
  7. Нажмите "Далее", чтобы получить обзор только что созданной задачи, а затем нажмите "Готово", чтобы создать ее.

Планировщик заданий — мастер создания простых задач — PowerShell

Совет!
Вы также можете заполнить все поля в поле «Программа/скрипт». После нажатия кнопки «Далее» планировщик заданий обнаружит, что у вас есть указанные аргументы, и предложит вам исправить их.

Скачать и установить модули PowerShell для Microsoft 365

При работе со сценариями PowerShell для Microsoft 365 (ранее известного как Office 365) вам сначала необходимо установить модули PowerShell для каждой службы и подключиться к этой службе, прежде чем вы сможете выполнять какие-либо сценарии.

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

Ниже приведен обзор наиболее распространенных модулей.

  • Обмен
    • V2 (рекомендуется)
      Install-Module -Name ExchangeOnlineManagement -Scope CurrentUser
    • Версия 1 (устаревшая)
      1. Войдите в Центр администрирования Exchange
      2. Выберите гибрид.
      3. Нажмите кнопку «Настроить» для модуля PowerShell Exchange Online.
        Эта прямая ссылка также может работать.
      4. В меню «Пуск» выберите; Модуль Microsoft Exchange Online Powershell

    Чтобы увидеть, какие модули вы установили, используйте;
    Получить установленный модуль

    Чтобы узнать, какие модули доступны на вашем компьютере, используйте;
    Get-Module –ListAvailable

    Обновление модулей можно выполнить через;
    Update-Module – Name – Scope CurrentUser

    Примечание:
    Если вы получаете сообщение об отсутствии доступного репозитория, зарегистрируйте его следующим образом;
    Register-PSRepository -Default -InstallationPolicy Trusted -Verbose

    Описывает, как запускать и писать скрипты в PowerShell.

    Подробное описание

    Сценарий – это обычный текстовый файл, содержащий одну или несколько команд PowerShell. Скрипты PowerShell имеют расширение PS1.

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

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

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

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

    Политика выполнения по умолчанию Restricted запрещает запуск всех сценариев, включая сценарии, которые вы пишете на локальном компьютере. Дополнительные сведения см. в разделе about_Execution_Policies.

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

    Чтобы изменить политику выполнения, используйте следующую процедуру.

    В командной строке введите:

    Изменение вступает в силу немедленно.

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

    Например, чтобы запустить сценарий Get-ServiceLog.ps1 в каталоге C:\Scripts, введите:

    Чтобы запустить скрипт в текущем каталоге, введите путь к текущему каталогу или используйте точку для представления текущего каталога, за которой следует обратная косая черта пути ( .\ ).

    Например, чтобы запустить сценарий ServicesLog.ps1 в локальном каталоге, введите:

    Если сценарий имеет параметры, введите параметры и значения параметров после имени файла сценария.

    Например, следующая команда использует параметр ServiceName сценария Get-ServiceLog для запроса журнала активности службы WinRM.

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

    Запуск с помощью PowerShell

    Начиная с PowerShell 3.0, вы можете запускать сценарии из Проводника.

    Запустите Проводник, щелкните правой кнопкой мыши имя файла сценария и выберите "Запустить с помощью PowerShell".

    Функция "Запуск с PowerShell" предназначена для запуска сценариев, которые не имеют обязательных параметров и не возвращают выходные данные в командную строку.

    Запуск скриптов на других компьютерах

    Чтобы запустить сценарий на одном или нескольких удаленных компьютерах, используйте параметр FilePath командлета Invoke-Command.

    Введите путь и имя файла сценария в качестве значения параметра FilePath. Сценарий должен находиться на локальном компьютере или в каталоге, доступ к которому есть у локального компьютера.

    Следующая команда запускает сценарий Get-ServiceLog.ps1 на удаленных компьютерах с именами Server01 и Server02.

    Получить справку по скриптам

    Командлет Get-Help получает разделы справки для сценариев, а также для командлетов и других типов команд. Чтобы получить раздел справки для сценария, введите Get-Help, а затем путь и имя файла сценария. Если путь к сценарию указан в переменной среды Path, вы можете опустить этот путь.

    Например, чтобы получить справку по скрипту ServicesLog.ps1, введите:

    Как написать сценарий

    Сценарий может содержать любые допустимые команды PowerShell, включая отдельные команды, команды, использующие конвейер, функции и управляющие структуры, такие как операторы If и циклы For.

    Чтобы написать сценарий, откройте новый файл в текстовом редакторе, введите команды и сохраните их в файле с допустимым именем и расширением .ps1.

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

    Чтобы создать этот сценарий, откройте текстовый редактор или редактор сценариев, введите эти команды и сохраните их в файле с именем ServiceLog.ps1 .

    Параметры в скриптах

    Параметры скрипта работают как параметры функции. Значения параметров доступны для всех команд сценария. Все функции параметров функции, включая атрибут Parameter и его именованные аргументы, также допустимы в сценариях.

    При запуске скрипта пользователи скрипта вводят параметры после имени скрипта.

    В следующем примере показан сценарий Test-Remote.ps1 с параметром ComputerName. Обе функции сценария могут обращаться к значению параметра ComputerName.

    Чтобы запустить этот сценарий, введите имя параметра после имени сценария. Например:

    Дополнительную информацию об операторе Param и параметрах функции см. в разделах about_Functions и about_Functions_Advanced_Parameters.

    Написание справки для скриптов

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

    Справка по скриптам на основе комментариев

    Создайте раздел справки, используя специальные ключевые слова в комментариях. Чтобы создать справку на основе комментариев для сценария, комментарии должны быть размещены в начале или в конце файла сценария. Дополнительные сведения о справке на основе комментариев см. в разделе about_Comment_Based_Help.

    Справка по сценариям на основе XML

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

    Чтобы связать сценарий с разделом справки на основе XML, используйте ключевое слово комментария справки .ExternalHelp. Дополнительные сведения о ключевом слове ExternalHelp см. в разделе about_Comment_Based_Help. Дополнительные сведения о справке на основе XML см. в разделе Как написать справку по командлету.

    Возврат значения выхода

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

    В Windows допускается любое число между [int]::MinValue и [int]::MaxValue.

    В Unix разрешены только положительные числа между [byte]::MinValue (0) и [byte]::MaxValue (255). Отрицательное число в диапазоне от -1 до -255 автоматически преобразуется в положительное число путем добавления 256. Например, -2 преобразуется в 254 .

    В PowerShell оператор выхода задает значение переменной $LASTEXITCODE. В командной оболочке Windows (cmd.exe) оператор выхода задает значение переменной среды %ERRORLEVEL%.

    Любой аргумент, который не является числовым или находится за пределами диапазона, зависящего от платформы, преобразуется в значение 0 .

    Область сценария и источник точек

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

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

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

    Чтобы указать источник сценария, введите точку (.) и пробел перед путем к сценарию.

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

    Например, сценарий UtilityFunctions.ps1 создает функцию New-Profile и переменную $ProfileName.

    Если вы запускаете сценарий UtilityFunctions.ps1 в его собственной области действия сценария, функция New-Profile и переменная $ProfileName существуют только во время выполнения сценария. Когда скрипт завершает работу, функция и переменная удаляются, как показано в следующем примере.

    Когда вы создаете сценарий и запускаете его, сценарий создает функцию New-Profile и переменную $ProfileName в вашем сеансе в вашей области. После запуска скрипта вы можете использовать функцию New-Profile в своем сеансе, как показано в следующем примере.

    Дополнительную информацию об области действия см. в разделе about_Scopes.

    Скрипты в модулях

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

    Вы можете включить скрипты в свои модули или создать модуль скрипта, который полностью или в основном состоит из скрипта и вспомогательных ресурсов. Модуль скрипта — это просто скрипт с расширением файла .psm1.

    Дополнительную информацию о модулях см. в разделе about_Modules.

    Другие функции скрипта

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

    $PSCommandPath — содержит полный путь и имя выполняемого скрипта. Этот параметр действителен во всех сценариях. Эта автоматическая переменная появилась в PowerShell 3.0.

    $PSScriptRoot — содержит каталог, из которого запускается сценарий. В PowerShell 2.0 эта переменная допустима только в модулях сценариев ( .psm1 ). Начиная с PowerShell 3.0, он действителен во всех сценариях.

    $MyInvocation — автоматическая переменная $MyInvocation содержит информацию о текущем скрипте, включая информацию о том, как он был запущен или «вызван». Вы можете использовать эту переменную и ее свойства для получения информации о сценарии во время его выполнения. Например, переменная $MyInvocation .MyCommand.Path содержит путь и имя файла сценария. $MyInvocation .Line содержит команду, которая запустила сценарий, включая все параметры и значения.

    Начиная с PowerShell 3.0, $MyInvocation имеет два новых свойства, которые предоставляют информацию о скрипте, вызвавшем текущий скрипт. Значения этих свойств заполняются только в том случае, если инициатор или вызывающий объект является сценарием.

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

    PSScriptRoot содержит каталог скрипта, вызвавшего или запустившего текущий скрипт.

    В отличие от автоматических переменных $PSCommandPath и $PSScriptRoot, которые содержат информацию о текущем сценарии, свойства PSCommandPath и PSScriptRoot переменной $MyInvocation содержат информацию о сценарии, вызвавшем текущий сценарий.

    Разделы данных. Вы можете использовать ключевое слово данных, чтобы отделить данные от логики в сценариях. Разделы данных также могут упростить локализацию. Дополнительные сведения см. в разделах about_Data_Sections и about_Script_Internationalization.

    Подписание сценария. Вы можете добавить к сценарию цифровую подпись. В зависимости от политики выполнения вы можете использовать цифровые подписи для ограничения выполнения сценариев, которые могут включать небезопасные команды. Дополнительные сведения см. в разделах about_Execution_Policies и about_Signing.

    Вы только начинаете работать с PowerShell? Используйте это руководство, чтобы создать и запустить свой первый файл сценария в Windows 10.

    Скрипт запуска PowerShell в Windows 10

    Источник: Windows Central

    В Windows 10 PowerShell — это инструмент командной строки, разработанный Microsoft для запуска команд и сценариев для изменения настроек и автоматизации задач. В некотором смысле это похоже на командную строку. Однако PowerShell — это более функциональный интерфейс командной строки (CLI), который предлагает расширенный набор инструментов и большую гибкость и контроль. Кроме того, в отличие от командной строки, PowerShell доступен в Windows, macOS и Linux.

    Сценарий — это просто набор команд, сохраненных в текстовом файле (со специальным расширением ".ps1"), которые PowerShell понимает и последовательно выполняет для выполнения различных действий.

    Единственное предостережение заключается в том, что протокол безопасности по умолчанию всегда блокирует запуск любого сценария на устройстве. Это означает, что при двойном щелчке по файлу «.ps1» в Windows 10 ничего не произойдет, и если вы попытаетесь запустить скрипт в PowerShell, вы увидите ошибку «невозможно загрузить, так как выполнение скриптов в этой системе отключено». сообщение. Тем не менее, запуск скриптов на вашем компьютере невозможен. Вам нужно только включить правильную политику выполнения.

    В этом руководстве по Windows 10 мы расскажем, как успешно написать и запустить свой первый файл сценария в PowerShell с помощью Visual Studio Code, Блокнота и консоли PowerShell Integrated Scripting Environment (ISE).

    Как создать файл сценария PowerShell в Windows 10

    В Windows 10 файлы сценариев PowerShell можно создавать с помощью практически любого текстового редактора или консоли ISE. Однако предпочтительным вариантом (спасибо @jotaka за наводку) для создания сценариев в будущем является использование редактора кода Visual Studio с расширением PowerShell.

    Создание скрипта с помощью кода Visual Studio

    Visual Studio Code, также известный как VS Code, – это бесплатный и расширяемый кроссплатформенный редактор кода, предоставляющий среду для редактирования практически любого языка программирования. А при добавлении расширения PowerShell вы получаете полностью интерактивный опыт редактирования сценариев, даже с поддержкой IntelliSense (дополнение кода).

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

    Установить код Visual Studio

    Чтобы установить Visual Basic Code в Windows 10, выполните следующие действия:

    Нажмите кнопку Windows, чтобы загрузить программу установки.

    Загрузка кода Visual Studio

    Источник: Windows Central

    Нажмите кнопку "Далее".

    Настройка кода VS

    Источник: Windows Central

    При необходимости подтвердите дополнительные задачи.

    Дополнительные настройки Visual Studio Code

    Источник: Windows Central

    После выполнения этих шагов можно переходить к установке расширения PowerShell.

    Установите расширение PowerShell

    Чтобы установить расширение PowerShell в VS Code, выполните следующие действия:

    1. Откройте VS Code.
    2. Перейдите на вкладку "Расширения" на левой панели.
    3. Выполните поиск PowerShell и выберите верхний результат.

    Нажмите кнопку "Установить".

    Установить расширение Powershell в VS Code

    Источник: Windows Central

    После выполнения этих шагов вы можете начать писать сценарии PowerShell с помощью Visual Studio Code.

    Создание сценария PowerShell с помощью кода Visual Studio

    Чтобы создать скрипт с помощью кода Visual Basic, выполните следующие действия:

    Откройте меню "Файл" и выберите параметр "Новый файл".

    VS Code создает новый файл

    Источник: Windows Central

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

    VS Code создает новый файл ps1

    Источник: Windows Central

    Напишите новый или вставьте скрипт, который хотите запустить, например:

    Write-Host "Поздравляем! Ваш первый скрипт успешно выполнен"

    Приведенный выше скрипт выведет на экран фразу "Поздравляем! Ваш первый скрипт успешно выполнен".

    (Необязательно) Нажмите кнопку "Выполнить" в правом верхнем углу (или нажмите клавишу F5), чтобы запустить скрипт.

    Запустить скрипт PowerShell в Visual Studio Code

    Источник: Windows Central

    Создание скрипта с помощью Блокнота

    Чтобы создать сценарий PowerShell с помощью редактора Блокнота в Windows 10, выполните следующие действия:

    1. Откройте Пуск.
    2. Выполните поиск Блокнота и нажмите на верхний результат, чтобы открыть приложение.

    Напишите новый или вставьте свой сценарий в текстовый файл, например:

    Write-Host "Поздравляем! Ваш первый скрипт успешно выполнен"

    Скрипт блокнота PowerShell

    Источник: Windows Central

    Введите описательное имя скрипта, например, first_script.ps1.

    Файл сценария Notepad ps1 Powershell

    Источник: Windows Central

    Создание сценария с интегрированной средой сценариев

    Кроме того, вы можете использовать встроенную консоль PowerShell ISE для кодирования сценариев в Windows 10.

    Интегрированная среда сценариев — это расширенный инструмент, но вы можете начать работу, выполнив следующие действия:

    1. Откройте Пуск.
    2. Выполните поиск Windows PowerShell ISE, щелкните правой кнопкой мыши верхний результат и выберите параметр «Запуск от имени администратора».
    3. Выберите меню «Файл».

    Выберите параметр «Создать», чтобы создать новый пустой файл .ps1.

    PowerShell создает файл PS1 с помощью ISE

    Источник: Windows Central

    Напишите новый или вставьте скрипт, который хотите запустить, например:

    Write-Host "Поздравляем! Ваш первый скрипт успешно выполнен"

    Простой скрипт PowerShell ISE

    Источник: Windows Central

    Введите имя скрипта, например, first_script.ps1.

    Сохранить сценарий PowerShell ISE как ps1

    Источник: Windows Central

    После выполнения этих шагов с помощью Блокнота, Visual Studio Code или PowerShell ISE сценарий будет готов к запуску, но по умолчанию он завершится ошибкой. Это связано с тем, что параметры PowerShell по умолчанию всегда блокируют выполнение любого скрипта. (Единственным исключением является запуск содержимого скрипта в Visual Studio Code или PowerShell ISE.)

    Как запустить файл сценария PowerShell в Windows 10

    Если вы хотите запустить файл сценария с помощью PowerShell, вам необходимо изменить политику выполнения в Windows 10.

    Чтобы изменить политику выполнения для запуска сценариев PowerShell, выполните следующие действия:

    1. Откройте Пуск.
    2. Выполните поиск PowerShell, щелкните правой кнопкой мыши верхний результат и выберите параметр «Запуск от имени администратора».

    Введите следующую команду, чтобы разрешить запуск скриптов, и нажмите Enter:

    Введите A и нажмите Enter (если применимо).

    PowerShell включает политику запуска скрипта

    Источник: Windows Central

    Введите следующую команду для запуска скрипта и нажмите Enter:

    В приведенной выше команде обязательно измените "PATH\TO\SCRIPT" на расположение вашего скрипта.

    Например, эта команда запускает сценарий, хранящийся в папке "Загрузки":

    Запустить скрипт PowerShell в Windows 10

    Источник: Windows Central

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

    В Windows 10 PowerShell включает четыре политики выполнения, в том числе:

    • Restricted — останавливает запуск любого скрипта.
    • RemoteSigned: разрешает сценарии, созданные на устройстве, но сценарии, созданные на другом компьютере, не будут выполняться, если они не содержат подпись доверенного издателя.
    • AllSigned — будут выполняться все сценарии, но только в том случае, если их подписал доверенный издатель.
    • Неограниченный — запуск любого скрипта без каких-либо ограничений.

    В приведенных выше шагах мы используем команду, позволяющую запускать локальные сценарии в Windows 10. Однако, если вы не планируете запускать сценарии регулярно, вы можете восстановить настройки по умолчанию, чтобы блокировать ненадежные сценарии, используя те же инструкции, что и выше. выше, но на шаге 4 обязательно используйте команду Set-ExecutionPolicy Restricted.

    Дополнительные ресурсы по Windows 10

    Для получения дополнительных полезных статей, обзоров и ответов на распространенные вопросы о Windows 10 посетите следующие ресурсы:

    Обзор: Stranger of Paradise просто не подходит

    Обзор: «Незнакомец из рая» не совсем правильно понял

    Stranger of Paradise: Final Fantasy Origin — это игра, набитая возмутительными персонажами и потрясающими мемами, но этого недостаточно, чтобы передать общее впечатление.

    Здесь

    Вот как можно сделать Forza Horizon 5 еще лучше

    Forza Horizon 5 – одна из лучших игр 2021 года и одна из лучших гоночных игр, в которые вы можете играть. Это, конечно, не идеально, с множеством областей, которые можно улучшить. Вот пять вещей, которые можно улучшить в Forza Horizon 5.

    Обзор: Shredders на Xbox — это любовное письмо сноуборду

    Обзор: Shredders на Xbox — это любовное письмо сноуборду

    Shredders — это эксклюзивная игра для консоли Xbox, которая появится в подписке Xbox Game Pass и позволит игрокам воплотить в жизнь свои самые смелые фантазии о том, как стать профессиональным сноубордистом. Несмотря на некоторые проблемы с производительностью, Shredders в значительной степени преуспевает в обеспечении эпического веселья на снегу.

    Познакомьтесь с этими обязательными приложениями Windows для Суперкубка LVI

    Ознакомьтесь с этими обязательными приложениями Windows для Суперкубка LVI

    Суперкубок LVI наконец-то здесь. Чтобы получить наилучшие впечатления от большой игры, обязательно скачайте эти приложения для Windows 11 и Windows 10.

    Читайте также: