私は PowerShell を初めて使用し、アイテムをパイプライン経由でカスタム関数に渡す方法を理解しようとしています。たとえば、次のような CSV ファイルがあります。
Url,Email
"http://www.google.com","myemail@gmail.com"
"http://www.yahoo.com", "myemail@yahoo.com"
そして、このように見える関数:
Function HelloWorld() {
[CmdletBinding()]
Param(
[Parameter(Mandatory=$True)]
[string]$Url,
[Parameter(Mandatory=$True)]
[string]$Email)
Proces {
Write-Host $Url $Email
}
}
コマンドが次のように機能することを望みます。
インポート-CSV C:\temp\myfile.csv | HelloWorld -Url {$ .Url} -Email {$ .Email}
ただし、次のエラーが発生します。
HelloWorld : コマンドがパイプライン入力を使用しないか、入力とそのプロパティがパイプライン入力を使用するパラメーターのいずれとも一致しないため、入力オブジェクトをコマンドのパラメーターにバインドできません。
私は PowerShell を初めて使用することを理解していますが、この単純な例をどのように機能させることができますか?