Обробка аргументів командного рядка в PowerShell за допомогою аргументів

  1. powershell.exe Alkane.ps1 "Alkane" "Рішення"
  2. $arg1 = $args[0] $arg2 = $args[1] Хост запису "Аргумент 1: $arg1" Хост запису "Аргумент 2: $arg2"
  3. if ($args.Count -lt 2) { Write-Host "Будь ласка, надайте принаймні два аргументи."

Аргументи можуть бути передані сценарію під час його виконання, записавши їх у вигляді списку, розділеного пробілами після імені файлу сценарію. Усередині сценарію змінна $1 посилається на перший аргумент у командному рядку, $2 — на другий аргумент і так далі. Змінна $0 посилається на поточний сценарій.

Аргументи командного рядка обробляються функцією main() програми на С. Щоб передати аргументи командного рядка, ми зазвичай визначте main() за допомогою двох аргументів: перший аргумент — це кількість аргументів командного рядка, а другий — список аргументів командного рядка.

Щоб передати аргумент у команді Invoke, вам потрібно використовуйте параметр -ArgumentList. Наприклад, нам потрібно отримати інформацію про процес блокнота на віддаленому сервері.

Перед назвою параметра стоїть дефіс (-), який сигналізує PowerShell, що слово, яке стоїть після дефіса, є назвою параметра. Ім’я та значення параметра можна розділити пробілом або двокрапкою. Деякі параметри не вимагають або не приймають значення параметра.

Для цього виконайте такі дії:

  1. Клацніть правою кнопкою миші Build Specifications у Project Explorer завершеного проекту.
  2. Виберіть новий>>Програма (EXE)
  3. Перейдіть до категорії «Додатково».
  4. Поставте прапорець «Передавати всі аргументи командного рядка в програму» (Малюнок 3).