PowerShell Tips

今回は自分で使うようにPowerShellのよく使うコマンドレットやTipsをまとめてみます。随時更新する予定! Get-Command Get-Commandでコマンドレットの一覧を取得できます。 P S C : \ > G e t - C o m m a n d C o m m a n d T y p e N a m e D e f i n i t i o n ...

March 5, 2012 · 174 min · 胡田昌彦

PowerShellで簡単に集計する方法

結果がいくつあるか数える 結果がいくつあるかを数えたいケースは結構あるとおもいます。一度テキストファイルに吐き出して、エディタで開いて、行数を見て……。なんていうことは必要なく、Measure-Objectを使えば一発です。 例えば、フォルダ内のアイテム数を数えたい時には以下のようにできます。 ファイルだけ数えたければ以下のように。 フォルダだけ数えたければ以下のように。 コネクションがいくつ貼られているかを数えたければnetstatの結果を数えることができます。結果を文字列で出力するコマンドレットの結果をMeasure-Objectに渡すと、文字列の行数を数えてくれます。(厳密に行数を数えたければ –Lineオプションをつけて行数を数えるほうが「行数」としては正確です。) ESTABLISHEDな接続の数を数えたければ以下のように。 特定のIPアドレスとの接続の数を数えたければ以下のように出来ます。 CSVファイルの集計 PowerShellではCSVファイルの読み込みが非常に簡単に行えます。きちんと1行づつオブジェクトになるので、個人的には感動するレベルです。(だって、PowerShellは規定の状態でサーバーに入ってるんですから!) 以下のようなヘッダ付きのCSVを用意します。 コマンドレット一発でCSVファイルを読み込めます。 おっと、文字化けしてしまいました。これは、PowerShellがUTF-16しか読み込めないからです。UTF-16に変換する方法は色々ありますし、別途文字コード変換ツール等をつかってもらえばいいとおもいますが、PowerShellで1番簡単にできるのは以下のようにTypeを使う方法かとおもいます。。 たったこれだけでPowerShellにCSVファイルが読み込まれ、それぞれの行が1つのオブジェクトになっています。素晴らしいですね。 プロパティはStringですから、もちろん各種Stringのプロパティ、メソッドも使えます。 そして、簡単に行の集計ができます。 これだけ簡単に手軽に色々な集計ができるのはPowerShellの大きな魅力だと思います。是非皆さんも使ってみてください。

February 10, 2012 · 1 min · 胡田昌彦