平々毎々(アーカイブ)

はてなダイアリーのアーカイブです。

PowerShellでsubversion

Re: C#でsubversion - 猫とC#について書くmatarilloの雑記の続き。
同僚から「C#だと40行かかるところも、PowerShellなら2行だから。」と言われた。

[xml]$log=svn log --xml -v http://svnrepo/ -l 5
$log.log.logentry|%{"■r{0} {1}" -f  $_.revision, $($_.msg -replace "\n(?!`$)", "`r`n    ")}

うわ、すげえと思ったが、「でもこれ日本語対応できてないんだよね」
よく聞くと、外部コマンドの出力を受け取るときのエンコーディングをうまく指定する方法がないとのこと。
うーん、しょっぱい(お塩だけに)

(追記)コメントで教えてもらった。先頭で

chcp 65001

としておけばコンソールがUTF8になるのでそれでいいのでは、とのこと。
(フォントも変更しておかないといけないけど)