ファイルの書き込み
.NET Frameworkのクラスでファイル書き込みを行うには、StreamWriterクラスを使用します。
StreamWriterクラスはそのままでは使用できないため、下記のようにNew-Objectコマンドレットを使用してインスタンスを作成する必要があります。
PS> $sw = New-Object System.IO.StreamWriter("C:\Work\Test2.txt")

エンコーディングを指定してファイルを書き込む場合には、下記のようにしてインスタンスを作成します。第2引数はファイルがすでに存在した場合に上書きするかどうかをBool値で指定します($trueで上書きを許可します)。
PS> $sw = New-Object System.IO.StreamWriter("C:\Work\Test2.txt", $false, [System.Text.Encoding]::UTF8)

インスタンスを作成した後は、変数$swを通してStreamWriterクラスのメソッドやプロパティにアクセスすることができます。
ストリームを閉じる
StreamWriterもStreamReader同様、使用後に必ずCloseメソッドを実行して閉じる必要があります。
この操作が行われない場合は、StreamWriterで開いたファイルはPowerShellがつかんだままとなってしまいます。PowerShellを終了すればファイルは解放されますが、使用後は必ずCloseメソッドを実行するようにしてください。
PS> $sw.Close()

1行書き込む
WriteLineメソッドを使用すると、引数に指定した値をストリームに書き込み、続けて行終端記号を書き込みます。
PS> $sw.WriteLine("はひふへほ")

1文字書き込む
Writeメソッドを使用すると、引数で指定した値をストリームに書き込みます。ただしWriteLineメソッドとは異なり行終端記号は書き込まれません。
PS> $sw.Write("まみむめも")

Writeメソッドを使用して行終端記号を書き込む場合にはNewLineプロパティを使用して、下記のように記述することができます。
PS> $sw.Write($sw.NewLine)

まとめ
今回はStreamReaderクラスとStreamWriterクラスを使用したファイルの読み書きについて説明しました。
このようにPowerShellでは、標準のコマンドレットだけではなく.NET Frameworkライブラリによる操作も可能ですので、是非トライしてみてください。
