ソース掲示板




すべてから検索

キーワード   条件 表示 現行ログ 過去ログ トピックス 名前 本文
オーソドックスバッチバックアップ
日時: 2008/06/20 12:34
名前: lightbox



材料
1) 他のマシンで週1でSQL-DMOを使ってバックアップしている dat ファイル
2) lha32.exe ( http://www.vector.co.jp/soft/win95/util/se028209.html )
3) 拡張子 vbs の WSH ソースコード
4) ↑を動かす cscript.exe
5) スタートバッチファイル
JOB 概要
1) COPY コマンドでローカルに dat ファイルをコピー
2) lha32.exe でそれぞれを圧縮( 書庫名に当日日付を含ませる )
3) ASP のソースコードを XCOPY で保存
メンテナンス

バッチファイル ( No.1 )
日時: 2008/06/20 12:40
名前: lightbox


日時: 2008/06/20 12:40
名前: lightbox
ECHO OFF

ECHO ○○○ ドライブマップング( G )
net use g: \\machine1\共有 password /USER:Administrator

ECHO ○○○ 5秒間停止
cscript.exe //NOLOGO _parts\sleep.vbs

ECHO ○○○ DBデータの保存
copy g:\backup\DB001.dat database
copy g:\backup\DB002.dat database
copy g:\backup\DB003.dat database
copy g:\backup\DB004.dat database

ECHO ○○○ 5秒間停止
cscript.exe //NOLOGO _parts\sleep.vbs

ECHO ○○○ ドライブマップ解除( G )
net use g: /DELETE

ECHO ○○○ DBデータの圧縮
cscript.exe //NOLOGO _parts\lha.vbs

ECHO ○○○ 5秒間停止
cscript.exe //NOLOGO _parts\sleep.vbs

ECHO ○○○ ドライブマップング( G )
net use g: \\machine2\web password /USER:Administrator

ECHO ○○○ 5秒間停止
cscript.exe //NOLOGO _parts\sleep.vbs

ECHO ○○○ ソースデータ保存
cscript.exe //NOLOGO src_backup.vbs

ECHO ○○○ ドライブマップ解除( G )
net use g: /DELETE
このアーティクルの参照用URLをクリップボードにコピー メンテナンス
部品コード ( No.2 )
日時: 2008/06/20 12:39
名前: lightbox
sleep.vbs
Wscript.Sleep(5000)
lha.vbs
Set WshShell = CreateObject( "WScript.Shell" )
Set Fso = CreateObject( "Scripting.FileSystemObject" )

LhaPath = "_parts"
FileDate = Replace( Date(), "/", "" )
CurPath = WshShell.CurrentDirectory

Call lha32( "DB001", "database" )
Call lha32( "DB002", "database" )
Call lha32( "DB003", "database" )
Call lha32( "DB004", "database" )

Function lha32( target, location )

	LzhPath = CurPath & "\" & location & "\" & target & "_" & FileDate & ".lzh"
	FilePath = CurPath & "\" & location & "\" & target & ".dat"
	Call WshShell.Run( LhaPath & "\lha32.exe u """ & LzhPath & """ """ & FilePath & """", , True )

End Function
このアーティクルの参照用URLをクリップボードにコピー メンテナンス
src_backup.vbs ( No.3 )
日時: 2008/06/20 12:56
名前: lightbox
ソースコードの保存なので、更新された最新ファイルのみを対象とする為、
XCOPY を使って、サブディレクトリも全て保存します

Set WshShell = Wscript.CreateObject( "WScript.Shell" )

Call SrcBackup( "batch", "g:", "source" )
Call SrcBackup( "main", "g:\Webhost", "source" )
Call SrcBackup( "admin", "g:\Webhost", "source" )
Call SrcBackup( "misc", "g:\Webhost", "source" )

Function SrcBackup( target, location, save_location )

	ExecCommand = "cmd.exe /C ""xcopy.exe """ & location & "\" & target & """ """ & save_location & "\" & target & "\"" /D /E /C /S /Y"""
	Call WshShell.Run( ExecCommand, , True )

End Function
上記処理ですと完全バッチですが、 PC の前で確認したい場合は、コマンドの最後に " & PAUSE" を追加します
ExecCommand = "cmd.exe /C ""xcopy.exe """ & location & "\" & target & """ """ & save_location & "\" & target & "\"" /D /E /C /S /Y & PAUSE"""
このアーティクルの参照用URLをクリップボードにコピー メンテナンス