rem -----------------------------------------------------
rem CドライブのシステムバックアップをDドライブに保存する
rem バックアップ中のエラーに備え、3世代の履歴を管理
rem -----------------------------------------------------
set BACKUP_LOG_FILE=e:\systembackup.log
rmdir /S /Q e:\WindowsImageBackup_2
move e:\WindowsImageBackup_1 e:\WindowsImageBackup_2
move e:\WindowsImageBackup e:\WindowsImageBackup_1
wbadmin START BACKUP -include:C: -backupTarget:e: -allCritical -quiet
echo %errorlevel%
rem wbadmin get status >> %BACKUP_LOG_FILE%
cscript //nologo status.vbs
echo %errorlevel%
2015年10月30日金曜日
status.vbs
'wbadmin 状況確認&自動復元&メール送信スクリプト
' 2010/10/24 by kenrouse
'------------------------------------------------
bRet = 0
Set fso = CreateObject("Scripting.FileSystemObject")
Set tso = fso.CreateTextFile("status.txt", true)
' 直前に実行されたバックアップの終了を待つコマンドです。
command = "wbadmin.exe get status"
' コマンドを実行します。
Set WshShell = WScript.CreateObject("WScript.Shell")
Set oExec = WshShell.Exec(command)
' コマンドの出力結果を読み取ります。※ただし、進捗表示の出力は除去
Do While oExec.StdOut.AtEndOfStream <> True
strline = oExec.StdOut.ReadLine
If InStr(strline, "%") = 0 Then
tso.WriteLine strline
End If
'If InStr(strline, "バックアップ操作が正常に完了") = 1 Then
If InStr(strline, "エラー") = 1 Then
bRet = 1
End If
Loop
WScript.Sleep 1000
tso.Close
Wscript.Quit bRet
' 2010/10/24 by kenrouse
'------------------------------------------------
bRet = 0
Set fso = CreateObject("Scripting.FileSystemObject")
Set tso = fso.CreateTextFile("status.txt", true)
' 直前に実行されたバックアップの終了を待つコマンドです。
command = "wbadmin.exe get status"
' コマンドを実行します。
Set WshShell = WScript.CreateObject("WScript.Shell")
Set oExec = WshShell.Exec(command)
' コマンドの出力結果を読み取ります。※ただし、進捗表示の出力は除去
Do While oExec.StdOut.AtEndOfStream <> True
strline = oExec.StdOut.ReadLine
If InStr(strline, "%") = 0 Then
tso.WriteLine strline
End If
'If InStr(strline, "バックアップ操作が正常に完了") = 1 Then
If InStr(strline, "エラー") = 1 Then
bRet = 1
End If
Loop
WScript.Sleep 1000
tso.Close
Wscript.Quit bRet
2015年10月19日月曜日
eo
robocopy "e:\test\in" "e:\test\backup" /MIR /LOG:"e:\test\log\log.txt" /TEE /V /X /FP /L /COPY:DATS /MT:8 /R:0
rem 容量があること
rem ファイルがクローズされている
rem BacpUpは共有されている
rem Backupフォルダに、ファイル書き込み中が判断できないか
setlocal
@echo off
echo %date% %time% start
set BacpUp=BacpUp
set BacpUp-1=BacpUp-1
set tmp=tmp
IF NOT EXIST %BacpUp% (
echo %BacpUp% %ERRORLEVEL%
exit /b 1
)
IF NOT EXIST %BacpUp-1% (
echo %BacpUp-1% %ERRORLEVEL%
exit /b 1
)
pushd E:\test
rem pause
ren %BacpUp-1% %tmp%
echo %ERRORLEVEL% ren %BacpUp-1% %tmp%
ren %BacpUp% %BacpUp-1%
echo %ERRORLEVEL% ren %BacpUp% %BacpUp-1%
ren %tmp% %BacpUp%
echo %ERRORLEVEL% ren %tmp% %BacpUp%
echo %date% %time% end
endlocal
rem pause
exit /b 0
2015年8月31日月曜日
ACL.vbs
Option Explicit
Dim IFILE
Dim OFILE
'IFILE = "P_icacls.cmd_out.txt"
' 入力チェック
If WScript.Arguments.Count < 1 Then WScript.Echo " PARAM ERROR Arguments.Count=" & WScript.Arguments.Count wscript.Quit(4) End If IFILE = WScript.Arguments(0) OFILE = IFILE & "_out.txt" Call ACLS(IFILE,OFILE) wscript.Quit(0) '************************************************ ' ACL結果の整形 '************************************************ Sub ACLS(IFILE,OFILE) Dim objFSO Dim objIFILE Dim objOFILE Dim iCnt Dim OCnt Dim sRec Dim sPath Dim sUser Dim iPos Set objFSO = CreateObject("Scripting.FileSystemObject") ' 指定ファイルをOPEN Set objIFILE = objFSO.OpenTextFile(IFILE, 1) Set objOFILE = objFSO.CreateTextFile(OFILE) sRec = "" iCnt = 0 OCnt = 0 iPos = 0 Do Until objIFILE.AtEndOfStream = True sRec = objIFILE.ReadLine iCnt = iCnt + 1 If sRec > "" Then
'空白行でない場合
If Mid(sRec,1,1) <> " " Then
'1桁目が空白以外の場合
iPos = InstrRev(sRec," ")
'パスとユーザに分ける
sPath = trim(Mid(sRec,1,ipos - 1))
sUser = trim(Replace(sRec, sPath, ""))
sRec = sPath & vbtab & sUser
Else
'1桁目が空白の場合
sRec = sPath & vbtab & trim(sRec)
End If
objOFILE.WriteLine sRec
OCnt = OCnt + 1
End If
Loop
WScript.Echo IFILE & " -> " & OFILE
WScript.Echo now & " iCnt=" & iCnt & " OCnt=" & OCnt
objOFILE.Close
objIFILE.Close
Set objOFILE = Nothing
Set objIFILE = Nothing
Set objFSO = Nothing
End Sub
Dim IFILE
Dim OFILE
'IFILE = "P_icacls.cmd_out.txt"
' 入力チェック
If WScript.Arguments.Count < 1 Then WScript.Echo " PARAM ERROR Arguments.Count=" & WScript.Arguments.Count wscript.Quit(4) End If IFILE = WScript.Arguments(0) OFILE = IFILE & "_out.txt" Call ACLS(IFILE,OFILE) wscript.Quit(0) '************************************************ ' ACL結果の整形 '************************************************ Sub ACLS(IFILE,OFILE) Dim objFSO Dim objIFILE Dim objOFILE Dim iCnt Dim OCnt Dim sRec Dim sPath Dim sUser Dim iPos Set objFSO = CreateObject("Scripting.FileSystemObject") ' 指定ファイルをOPEN Set objIFILE = objFSO.OpenTextFile(IFILE, 1) Set objOFILE = objFSO.CreateTextFile(OFILE) sRec = "" iCnt = 0 OCnt = 0 iPos = 0 Do Until objIFILE.AtEndOfStream = True sRec = objIFILE.ReadLine iCnt = iCnt + 1 If sRec > "" Then
'空白行でない場合
If Mid(sRec,1,1) <> " " Then
'1桁目が空白以外の場合
iPos = InstrRev(sRec," ")
'パスとユーザに分ける
sPath = trim(Mid(sRec,1,ipos - 1))
sUser = trim(Replace(sRec, sPath, ""))
sRec = sPath & vbtab & sUser
Else
'1桁目が空白の場合
sRec = sPath & vbtab & trim(sRec)
End If
objOFILE.WriteLine sRec
OCnt = OCnt + 1
End If
Loop
WScript.Echo IFILE & " -> " & OFILE
WScript.Echo now & " iCnt=" & iCnt & " OCnt=" & OCnt
objOFILE.Close
objIFILE.Close
Set objOFILE = Nothing
Set objIFILE = Nothing
Set objFSO = Nothing
End Sub
P_icacls.cmd
@echo off
ECHO ************************************
ECHO "P_icacls.cmd admtools /T"
ECHO ************************************
ECHO %date% %time% Start %0
@icacls.exe %* | find /v "" > %0_out.txt
ECHO %date% %time% End
ECHO %date% %time% Start ACL.vbs
cscript //nologo ACL.vbs %0_out.txt
ECHO %date% %time% End
pause
exit /b 0
ECHO ************************************
ECHO "P_icacls.cmd admtools /T"
ECHO ************************************
ECHO %date% %time% Start %0
@icacls.exe %* | find /v "" > %0_out.txt
ECHO %date% %time% End
ECHO %date% %time% Start ACL.vbs
cscript //nologo ACL.vbs %0_out.txt
ECHO %date% %time% End
pause
exit /b 0
2015年8月26日水曜日
url
https://support.microsoft.com/ja-jp/kb/195144
https://support.microsoft.com/ja-jp/kb/210638
https://support.microsoft.com/ja-jp/kb/250267
https://support.microsoft.com/ja-jp/kb/3037941
https://support.microsoft.com/ja-jp/kb/121007
http://www.cat-ears.net/?p=7829
https://social.technet.microsoft.com/Forums/windowsserver/ja-JP/1793d8ad-422e-429f-8bce-8a64e8b315ee/dos83robocopy?forum=windowsserver2008ja
http://shiroyuki-mot-says.blogspot.jp/2014/04/pc-short-naming-robocopy.html
http://d.hatena.ne.jp/kerorogunsou/20081204/1228394516
○
http://d.hatena.ne.jp/ming_mina/20110116/1295196049
○
http://d.hatena.ne.jp/kerorogunsou/20081204/1228394516
https://support.microsoft.com/ja-jp/kb/210638
https://support.microsoft.com/ja-jp/kb/250267
https://support.microsoft.com/ja-jp/kb/3037941
https://support.microsoft.com/ja-jp/kb/121007
http://www.cat-ears.net/?p=7829
https://social.technet.microsoft.com/Forums/windowsserver/ja-JP/1793d8ad-422e-429f-8bce-8a64e8b315ee/dos83robocopy?forum=windowsserver2008ja
http://shiroyuki-mot-says.blogspot.jp/2014/04/pc-short-naming-robocopy.html
http://d.hatena.ne.jp/kerorogunsou/20081204/1228394516
○
http://d.hatena.ne.jp/ming_mina/20110116/1295196049
○
http://d.hatena.ne.jp/kerorogunsou/20081204/1228394516
登録:
投稿 (Atom)