2010/03/24

PowerShellの使い方


PowerShellがいくら普及してきた、といってもいきなり
1から10までPowerShellでやるには荷が重いし、
運用管理レベルでは、仰々しく作り込みをするではなく
はじめの内はバッチの中でちょこちょことコマンドレッドを使うというレベルでいいかと思う。
慣れてきたら色々趣向をこらしてやってみるってことで。
(いまだ.NETFrameWork よくわからないし。)

例えば、ここ最近のHotFix適用状況を調べるバッチだとこんな感じで。
 @echo off
:1
echo HotFixチェック
set /p kbmonth=何ヶ月分のFotFixを出力しますか?:

powershell -command "& { Get-HotFix | ? { $_.InstalledOn -ge $(get-date).addmonths(-%kbmonth%) } }"

pause
goto 1
 これをバッチとして用意して実行すれば、
コマンドプロンプトの中でPowerShellを呼び出し、Get-HotFixコマンドレッドを使って
HotFixの適用状況を得ることができます。
HotFixチェック
何ヶ月分のFotFixを出力しますか?:1


Source        Description      HotFixID      InstalledBy          InstalledOn
------        -----------      --------      -----------          -----------
BUSO-PC       Update           KB976264      NT AUTHORITY\SYSTEM  2010/03/10...
BUSO-PC       Update           KB980302      NT AUTHORITY\SYSTEM  2010/03/23...



続行するには何かキーを押してください . . .
HotFixチェック
何ヶ月分のFotFixを出力しますか?:2

Source        Description      HotFixID      InstalledBy          InstalledOn
------        -----------      --------      -----------          -----------
BUSO-PC       Security Update  KB971468      NT AUTHORITY\SYSTEM  2010/02/10...
BUSO-PC       Security Update  KB975560      NT AUTHORITY\SYSTEM  2010/02/10...
BUSO-PC       Update           KB976264      NT AUTHORITY\SYSTEM  2010/03/10...
BUSO-PC       Update           KB976662      NT AUTHORITY\SYSTEM  2010/02/24...
BUSO-PC       Update           KB976972      NT AUTHORITY\SYSTEM  2010/01/27...

:(略

まぁはじめはこんな感じで徐々にコマンドレッドを使っていく、という形で。
しかし、この使い方でもPowerShellのリモート機能を組み合わせると結構面白いことができます。
それはまぁ、機会あればまたいずれ。

スポンサーリンク

スポンサーリンク