Вы должны указать, что $str
может принимать значение из конвейера (я также добавил здесь параметр Mandatory
- он не обязательно нужен, но хорошо вписывается в этот конкретный сценарий):
param(
[Parameter(Mandatory=$true,
ValueFromPipeline=$true)]
[string]
$str
)
echo $str
Затем вы запускаете этот скрипт, и он должен работать (помните о .\
перед именем файла):
PS> "a" |.\myecho.ps1
a
Вы можете узнать больше о дополнительных параметрах, используя Get-Help about_Functions_Advanced_Parameters
или в онлайн-версии .