1

出力を .txt ファイルに追加しようとしています。私のコマンドは次のとおりです。

ni C:\example\example.txt -type file -value "`n$(Get-Date)"|out-null
$CSVvariable | sort Property | Format-Table | Tee-Object -Append -FilePath C:\example\example.txt

コマンドを実行すると、.txt ファイルに次の出力が表示されます。

《⼹㔰㈯㄰》㤱㐺㨹 (表は正しく表示されています。)

$(Get-Date) は上記の記号になるようです。誰でも理由がわかりますか?

前もって感謝します。

4

2 に答える 2

2

format-tableこのようなパイプライン内で使用したくはありません。の出力はformat-table、ホストが解釈し、ほとんど理解できない「書式設定オブジェクト」のコレクションです。私が最後にチェックしたとき、それらは十分に文書化されていませんでした。

テーブルの書式設定が本当に必要な場合は、out-stringの前にパイプラインに追加してみてくださいtee-object。ただし、その時点で、「オブジェクト」ではなく、文字列のコレクションが作成されます。

これは、奇妙な文字が表示される理由とは別の問題ですが、format-table を削除して、ファイルがどのように見えるかを確認したいと思います。

于 2013-09-05T20:28:04.243 に答える
0

あなたのCultuerInfoは何ですか?

([System.Threading.Thread]::CurrentThread.CurrentCulture).DateTimeFormat

en-US 以外に設定されているようです。

于 2013-09-05T19:28:17.283 に答える