最近、趣味で Power Shell をいじりはじめました。
これ Windows マニア・・というか、Windows のコマンドラインに対して Linux に
比べてダメすぎる・・と日頃から不満に思っている人にはオススメです!
今までは無理だった事でどんなことが出来るかと言うと、、たとえば、
100MB 以上メモリを食っているプロセスを調べたい!
という時は PowerShell 上で以下のようにタイプするだけ!
ps | where { $_.WS -gt 100MB }
ps ってのはプロセスを出力するコマンド(エイリアス)で、上記の例だと、ps で取得できた
プロセスオブジェクトに対して 100MB を越えたプロセスのみを一覧表示する用にしてます。
またイベントログに関してもコマンドから取得できるようになっており、
24時間以内のシステムログを表示させたい!
という時でも、
Get-EventLog -logname system | where { $_.timegenerated -gt (get-date).addhours(-24) }
とやるだけで表示されます!
上記のを解説すると、システムのイベントログオブジェクトを取得し、各ログの生成時刻が
現在時刻の24時間まえより大きいなら表示するってことです。
PowerShell かなり(・∀・)イイ!!
正規表現も使えるし、ファイルオブジェクトも開けるし、ちょっとしたツールを作るなら
perl で作るのと変わらない程、簡潔に作れちゃう!
PowerShell はお気に入りの言語環境に入ったぜ。
0 コメント:
コメントを投稿