Można również jawnie zadeklarować nazwane parametry. Na przykład:
param([switch]$someBoolSwitch=$false, [String]$nameOfSomething="some default string")
To pozwala przechodzić w wymienionych argumentów do skryptu, jak w poniższym przykładzie:
.\<nameOfScript.ps1> -someBoolSwitch -nameOfSomething "Slayer Roolz!"
a jeśli pominąć -nameOfSomething "Slayer Roolz!"
, następnie $nameOfSomething
po prostu domyślnie "some default sting"
. Podobnie, domyślnie $someBoolSwitch
do $false
, chyba że określono inaczej.
Ta metoda pozwala użytkownikowi, jako programistce, decydować, które parametry są konieczne, a które można pominąć lub zmienić. Ponadto pozwala użytkownikowi na wprowadzanie argumentów w dowolnej kolejności, ponieważ są one nazwane, a nie pozycyjne.
Jedną wadą posiadania parametrów nazwanych w przeciwieństwie do parametrów pozycyjnych jest to, że wywołanie linii poleceń może stać się dość duże, ponieważ użytkownik musi wpisać nazwę każdego parametru.