2012年7月4日水曜日

◆ブートシーケンスを一時的に変更する

Windows8などを試すためにVHDブートをしていると、沢山のOS環境が増えてくる。

別環境に切り替えようと再起動するのだが、他の作業をしていたりして気を抜いているとついブートメニューを見逃してしまう事も多い。

再起動する時点で次にブートアップさせるOSが選択できれば便利である。
以下にその方法が書いてあるのだが若干作業が面倒。
bcdeditコマンドでブート・シーケンスを一時的に変更する - @IT

という事でスクリプト化してみた。

001
002
003
004
005
006
007
008
009
010
011
012
013
014
015
016
017
018
019
020

$ids = @()
$titles = @()

bcdedit | %
{
   
if($_ -like "identifier*"
){
       
$words = -split $_
        $ids += $words[1]
    }
   
if($_ -like "description*"
){
       
$words = -split $_
        $titles += $words[1..($words.count-1)] -join " "
    }
}

Write-Host "Choose Boot Number" -ForegroundColor Yellow 
for ($i = 0; $i -lt $ids.Count; $i++
) {
   
Write-Host ($i+1) ":" $titles[$i] $ids[$i]
}
$no = Read-Host "No"
bcdedit /bootsequence $ids[$no - 1]
Restart-Computer

image

再起動後にブートさせたいOSの番号を入力してあげれば良い。

ちなみに、このスクリプトをWindows8環境で動かすには「管理者として実行」のショーをカットを作っておくと便利かもしれない。
MTG Blog: ◆Windows8RPでコマンドを管理者として実行する

0 件のコメント:

コメントを投稿