2015年10月30日金曜日

backup.cmd

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%


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

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

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





2015年8月26日水曜日

::robocopy "d:\source" "d:\dest" /MIR /LOG+:"d:\testlogx.txt" /TEE /FP /V /X /COPY:DATSO /MT:8 /R:0 /BYTES

robocopy "d:\source" "d:\dest" /XF "~.*" /MIR /LOG+:"d:\testlogx.txt" /TEE /FP /V /X /COPY:DATSO /MT:8 /R:0 /BYTES

pause

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