Changing powershell pipeline type to hashtable (or any other enumerable type)

Question:

I like to write a cmdlet “Convert-ToHashTable” which performs following task:

Import-csv places an array on the pipeline, how can i change it to a hashtable in my Convert-ToHashTable cmdlet? In the Process part of the cmdlet i can access the elements, but i don’t know how to change the type of the pipeline itself

Process
{
Write-Verbose “Process $($myinvocation.mycommand)”
$CurrentInput = $_

}

Is there a way to return a complete hashtable as the new pipeline or create a new pipeline with type hashtable?

Answer:

What do you plan to use as keys for hashtable? other than that, it should be pretty easy to do even with simple foreach-object:

Don’t see need for any “change pipeline type” magic, honestly…?

Source:

Changing powershell pipeline type to hashtable (or any other enumerable type) by licensed under CC BY-SA | With most appropriate answer!

Leave a Reply