スポンサーサイト  このエントリーを含むはてなブックマーク はてなブックマーク - スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Windows PowerShell で日本語文字化け  このエントリーを含むはてなブックマーク はてなブックマーク - Windows PowerShell で日本語文字化け

Windows PowerShell を使ってみました。Windows XP Pro(SP2)環境です。

Windows Server 2003 Service Pack 1 および Windows XP Service Pack 2 用の Windows PowerShell 1.0 ローカライズ版インストール パッケージ
タイトル長すぎ。

使って見てすぐに気がついたこと。Export-Csvで日本語が文字化けします。例えばサービスの一覧を直接CSVファイルに落とすには以下のコマンドを使います。

PS C:\> Get-Service|epcsv c:\service.csv

epcsvはExport-CsvへのAliasです。出来上がったCSVファイルを開いてみると日本語が"?"になっています。最初は文字コードのせいで表示が出来ていないだけかと思ったのですが、バイナリで見てもやっぱりただの"?"でした。Get-Serviceに限らず、dir|epcsv c:\dir.csv などの結果でも同じです(ちなみにdirはGet-ChildItemへのAlias)。ということはExport-Csvに原因がある。で、結局、

PS C:\> Get-Service|epcsv c:\service.csv -encoding Default

とすることで日本語も正常に出力されることが判明しました。しかしDefaultでOKなら指定しなくてもOKにならないの?なにか隠された設定があるのかもしれません。

現状のコマンドプロンプトとは微妙に互換性がありません。例えばCドライブをカレントにしているときに cd D:\subdir とすると、コマンドプロンプトならDドライブのカレントディレクトリが変更されるだけですが、PowerShellだとカレントドライブも同時に移動します。カレントドライブの移動には、コマンドプロンプトならD:などとしますが、PowerShwllではエラーになります。 ←ウソでした(2006/11/20)

資料の少なさもあってまだそれほど試せていないのですが、それでもかなり強力なことは分かります。これが標準装備されるVistaではコマンドラインベースの作業が相当楽になる&見直されることでしょう。色々な人が好き好きにに実装するUnixに比べて、自分たちだけですべての仕様を決定できるというMicrosoftの有利な点がよく出ていると思います。

コメント

コメントの投稿















管理者にだけ表示を許可する

トラックバック

この記事のトラックバックURL
http://srgia.blog46.fc2.com/tb.php/162-1034c8f4

上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。