Dlaczego tak
Blok param definiuje parametry skryptu z wartościami domyślnymi; przy wywołaniu z nazwanym parametrem -Dni 3 zmienna $Dni otrzymuje 3, a $Plik zachowuje wartość domyślną log.txt. Wynik 3 7 powstałby, gdyby podać wartość pozycyjnie, bez nazwy parametru — trafiłaby wtedy do pierwszego parametru $Plik. Wynik log.txt 7 pomija przekazany argument.