Powershell está removendo vírgula do argumento do programa

Eu quero passar uma lista de valores separados por vírgula em um script como parte de um único switch.

Aqui está o programa.

param(
  [string]$foo
)

Write-Host "[$foo]"

Aqui está o exemplo de uso

PS> .\inputTest.ps1 -foo one,two,three

Eu esperaria que a saída deste programa fosse[one,two,three] mas em vez disso está retornando[one two three]. Isso é um problema porque quero usar as vírgulas para deliminar os valores.

Por que o powershell está removendo as vírgulas e o que preciso mudar para preservá-las?

questionAnswers(4)

yourAnswerToTheQuestion