前回作ったGhost自動展開を対話型で進めるように変更します。
さらに今回は外付けのHDDやUSBからの展開にも対応できるようにしてみようと思います。
編集するスタートアップについては前回の記事を参照下さい。
http://coffeekko.com/autoghost/
各処理の動きを選択形式で動かせるようにしたものは「各処理の選択」に置いてあるので、結果だけほしい方はそちらを参照して下さい。
セッション名を指定して自動展開
Ghostイメージのパターンに合わせてセッション名を変更する際など、前回のスタートアップでは対応できないのでコマンド上でユーザがセッション名を入力できるようにします。
ユーザが入力をするためには「set /p」コマンドを使用します。
1 2 3 4 5 6 |
@echo off :SelectSession set /p session="Please input the session >" if "%session%"=="" goto SelectSession GHOST64.EXE -clone,mode=restore,src=@mc%session%,dst=1 -sure |
「Please input the session >」の後にセッション名を入力すると、そのセッションでGhostの自動展開が始まります。
” ”の中を編集すれば表示を変えることができます。
何も入力しないでEnterキーが押された場合は再度入力をする画面に戻ります。
イメージ名を指定して自動展開
外付けHDDやUSBメモリ等にイメージを保存している場合はこちらを使用して、イメージ名の指定で展開を行います。
イメージの入っているドライブが不明の場合は「for」コマンドを使用します。
1 2 3 4 5 6 7 |
@echo off :SelectgName set /p gName="Please input the Image Name >" if "%gName%"=="" goto SelectgName for %%f in (C D E F G H I J K L M N) do if exist %%f:%gName% set gDrive=%%f: GHOST64.EXE -clone,mode=restore,src=%gDrive%\%gName%,dst=1 -sure |
「Please input the Image Name >」の後にイメージ名を入力すると、そのセッションでGhostの自動展開が始まります。
イメージ名は拡張子まで入力しないとエラーになります。
最初からイメージ名とドライブが決まっている場合は最後の一行のみでOKです。
例えば「E:\TEST.gho」の場合は下記でOKです。
1 2 |
@echo off GHOST64.EXE -clone,mode=restore,src=E:\TEST.gho,dst=1 -sure |
MBRディスクとGPTディスク
オプションでどちらのディスクにイメージを展開するかを指定できます。
・MBRディスク ・・・・ -fmbr
・GPTディスク ・・・・ -fgpt
例えばGPTディスクで行う場合は下記になります。
1 2 |
@echo off GHOST64.EXE -clone,mode=restore,src=E:\TEST.gho,dst=1 -sure -fgpt |
各処理の選択
上記で作成した各処理を選択形式で実行できるようにします。
ついでに再起動とかの機能もつけてより使い勝手のいいようにカスタマイズします。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 |
@echo off x: cd \ghost GHOST64.EXE /setosdrives /blind >> x:\ghost\startlog.txt :LOOP rem メニューを表示します。 cls echo ******************************************************************************* echo Recovery Menu echo ******************************************************************************* echo. echo ------------------------------------------------------------------------------- echo. echo ******************************************************************************* echo Select Menu [1-3,8,9,0] echo ------------------------------------------------------------------------------- echo [1] : Auto Restore from GhostCast echo [2] : Auto Restore from Disk echo [3] : Run GHOST64.EXE [Non Option] echo [8] : Reload Menu. echo [9] : Restart PC. echo [0] : Shutdown PC. echo ******************************************************************************* rem メニューに表示されている番号を入力するとその処理を開始します。 set /p NUM="Please select the number. >" if "%NUM%"=="1" goto 1 if "%NUM%"=="2" goto 2 if "%NUM%"=="3" goto 3 if "%NUM%"=="8" goto LOOP if "%NUM%"=="9" goto REB if "%NUM%"=="0" goto SHUT goto LOOP rem GhostCastによる処理がです。 :1 :SelectSession set /p session="Please input the session >" if "%session%"=="" goto SelectSession GHOST64.EXE -clone,mode=restore,src=@mc%session%,dst=1 -sure goto REB rem イメージ名による処理がです。 :2 cls echo -------------------------------------------------------------------- echo Auto Restore from GhostCast echo -------------------------------------------------------------------- :SelectgName set /p gName="Please input the Image Name >" if "%gName%"=="" goto SelectgName for %%f in (C D E F G H I J K L M N) do if exist %%f:%gName% set gDrive=%%f: GHOST64.EXE -clone,mode=restore,src=%gDrive%\%gName%,dst=1 -sure goto REB rem Ghost.64を起動します。 :3 cls echo -------------------------------------------------------------------- echo Run GHOST64.EXE [Non Option] echo -------------------------------------------------------------------- GHOST64.EXE goto REB rem 再起動します。 :REB echo Reboot... wpeutil reboot goto END rem シャットダウンします。 :SHUT echo Shutdown... wpeutil shutdown goto END :END |
最初にメニューが表示されるので行いたい処理の番号を入力します。
各メニューの内容は
・echo [1] : Auto Restore from GhostCast ・・・・ castサーバによる処理 ・echo [2] : Auto Restore from Disk・・・・ イメージ名による処理 ・echo [3] : Run GHOST64.EXE [Non Option]・・・・ Ghost64の起動 ・echo [8] : Reload Menu.・・・・ メニューの再表示 ・echo [9] : Restart PC.・・・・ 再起動 ・echo [0] : Shutdown PC.・・・・ シャットダウン |
となっています。
これをスタートアップに保存すれば完成です。
コメントを残す