PowerShell を使っているとき、例えば New-Item をしたときなど、別に必要ないのに丁寧な出力結果をしてくれることがある。
$ New-Item -ItemType Directory -Path ./dir
Directory: C:\Users\natsuneko\dir
Mode LastWriteTime Length Name
---- ------------- ------ ----
d---- 2024/04/21 18:49 dir
自動化スクリプトなどを使用している場合、こういった出力は邪魔となるケースがあるため、出力して欲しくないときがある。
そういうときに使えるのが Out-Null。
こいつにパイプするだけで黙ってくれる。
$ New-Item -ItemType Directory -Path ./dir| Out-Null # なにもでない
ちなみに Out-Null でなくとも、 $null にリダイレクト、 $null に代入、 void にキャストすることでも同じ結果を得られるらしい。
パフォーマンスは Out-Null はかなり遅いようなので、繰り返し使う場合は $null へリダイレクトするのが良さそう (ほか2つは直感的ではないので......)。
公式サイトにある個人ブログ調のページでは Out-Null と $null へリダイレクトする方法 (好みではないとしつつも一応 $null への代入も) が紹介されているので、 PowerShell ではこの2つを覚えておくといつでも出力を無に葬り去れそうです。
ということで、メモでした。