PowerShell:
Odczytywanie argumentów linii poleceń
Jak to zrobić:
# Przykład skryptu 'hello.ps1', który przyjmuje argumenty
param(
[string]$name,
[int]$repeat = 1
)
for ($i=0; $i -lt $repeat; $i++) {
Write-Output "Cześć $name!"
}
# Wywołanie skryptu z argumentami
PS > .\hello.ps1 -name "Świat" -repeat 3
# Output:
Cześć Świat!
Cześć Świat!
Cześć Świat!
Deep Dive
W przeszłości niewielu programistów PowerShell korzystało z argumentów wiersza poleceń, ale od kiedy skrypty stały się bardziej zaawansowane, stało się to bardziej powszechne. Alternatywą były stałe wartości kodowane bezpośrednio w skrypcie lub interaktywne pytania do użytkownika. Dziś korzystanie z param
dla określenia wejściowych parametrów skryptu jest standardową praktyką. Dodatkowo, $args
pozwala na elastyczne przetwarzanie, kiedy niewymagana jest jasno zdefiniowana struktura parametrów.