コツ っていうか、ちゃんと基礎を知っている人には、至極当然のことなのかも。

単純に Select-String で抽出キーワードを指定するだけだと、出力結果に @{~~~} という囲いができてしまって見た目が良くない。
Get-hardDisk $allvm | select Parent,Name,StorageFormat | Select-String "Thick"

String型ではない状態で扱っているのが原因だと思うけど、Get系の出力結果をString型に変換するにはどうすればよいのだろう?
ググったら、Out-String というコマンドがあったので、使ってみる
Get-hardDisk $allvm | select Parent,Name,StorageFormat | Out-String | Select-String "Thick"

あらら… Select-String で指定した抽出条件が反映されていない。
これまたググって~
とても良いブログ記事がありました。

Out-Stringを使ってSelect-Stringをより便利に使う
https://blog.shibata.tech/entry/2015/08/23/235304

というわけで、-Stream オプションを追加してみると、期待通りの出力ができた!
Get-hardDisk $allvm | select Parent,Name,StorageFormat | Out-String -Stream | Select-String "Thick"

この手の処理はよく使うので、覚えてよかった。


参考
Getting Started - All About Strings!