2015年5月30日土曜日

[PowerShell] 最新のWindows Serverバックアップの内容を取得する

wbadminコマンドでWindows Serverバックアップの内容を取得するときは
 (1)wbadmin get versions で利用可能なバックアップのバージョンを取得
 (2)wbadmin get items -version:バージョン識別子 でバックアップ内容を取得
という手順になります。いちいちバージョンを確認するのが面倒なのでPowerShellをしようしたスクリプトで自動化しました。
このコマンドはコマンドプロンプトではなくPowerShellにて実行します。


# Windows Serverバックアップにて有効なバックアップの一覧を取得します
$Wbadminlog = wbadmin get versions

# 取得した一覧の情報を1行ずつ取り出せるよう加工します
$Wbadminlog = $Wbadminlog -split "`n"

# 一覧の情報の行数を取得します
$WbadminlogNoteLineCount = $Wbadminlog.Length

# 変数の初期値を設定
$i = 0
$BackupVersion = ""
$BackupDate = Get-Date "2000/01/01"


# 最も新しい日付のバックアップバージョンを取得
while ($i -lt $WbadminlogNoteLineCount){
    if($Wbadminlog[$i] -like "バージョン識別子: *"){
        if ($BackupDate -lt (Get-Date $Wbadminlog[$i].Substring(10,16))){
            $BackupVersion = $Wbadminlog[$i].Substring(10,16)
            $BackupDate = (Get-Date $Wbadminlog[$i].Substring(10,16))
        }
    }
    $i ++
}

# 最も新しいバックアップの内容を取得します
wbadmin get items -version:$BackupVersion




0 件のコメント:

コメントを投稿