#navi(../)

'#####################################################################
'未テスト
'
'
'#####################################################################
Option Explicit

'実運用時はコメントアウトのこと
On Error Resume Next

Dim WshNetwork
Dim strDate, strBackup, strPath, strOldestFile
Dim strYear, strMonth, strDay, strTargetDate
Dim index, FileList
Dim objShell, objFile, objWMIService
Dim dtmDate

Set objShell = Wscript.CreateObject("WScript.Shell")
Set WshNetwork = Wscript.CreateObject("WScript.Network")

'Z:ドライブが使用されていれば切断

RemoveNetworkDrive()

'ネットワークドライブの接続
WshNetwork.MapNetworkDrive "Z:", "file://127.0.0.1/work", False

'バックアップ実行コマンドの作成
strBackup = "C:\WINDOWS\system32\ntbackup.exe backup ""@C:\Documents and Settings\rikei\Local Settings\Application Data\Microsoft\Windows NT\NTBackup\data\FullBackup.bks"" /a /d ""ウィークリーバックアップセット"" /v:no /r:no /rs:no /hc:off /m normal /j ""FullBackup"" /l:s /f ""Z:\"""

'本日の日付でファイル名を作成
dtmDate = Date
GetDate (dtmDate)

'最後の"を取り除き、日付_full.bkfというファイル名を指定
index = Len(strBackup) - 1
strPath = Left(strBackup, index) & strTargetDate & "_full.bkf"

'コマンドの実行
objShell.Run (strPath)

'???????????????????????
'古いファイルの削除
'???????????????????????
'本日から何日以前のファイルを対象にするか指定
dtmDate = Date - 13
'指定条件でファイル名を生成
GetDate (dtmDate)

'
Set objWMIService = GetObject("winmgmts:\\" & "127.0.0.1" & "\root\cimv2")
Set FileList = objWMIService.ExecQuery _
  ("ASSOCIATORS OF {Win32_Directory.Name='C:\work\Upload'} Where " _
  & "ResultClass = CIM_DataFile")

For Each objFile In FileList
 strDate = Left(objFile.LastModified,
 '#####################################################################
 '未テスト
 '
 '
 '#####################################################################
 Option Explicit
 
   Wscript.echo strDate
 If strDate < strTargetDate Then
  'If objFile.Extension = “_full.bkf” Then
   'objFile.Delete
  'End If
 End If
Next

'ネットワークドライブの切断
RemoveNetworkDrive()

'終了処理
Set WshNetwork = Nothing
Set objShell = Nothing

'ここまで

'???????????????????????
'ネットワークドライブの切断
Private Function RemoveNetworkDrive()
 '実運用時はコメントアウトのこと
 On Error Resume Next
 WshNetwork.RemoveNetworkDrive "Z:", False, True
End Function
'???????????????????????
'ファイル名、Date整形
Function GetDate(dtmDate)
    strDay = Day(dtmDate)
    If Len(strDay) < 2 Then
        strDay = "0″ & strDay"
    End If
    strMonth = Month(dtmDate)
    If Len(strMonth) < 2 Then
        strMonth = "0″ & strMonth"
    End If
    strYear = Year(dtmDate)
    strTargetDate = strYear & strMonth & strDay
End Function
'???????????????????????


 
 Dim WshNetwork
 Dim strDate, strBackup, strPath, strOldestFile
 Dim strYear, strMonth, strDay, strTargetDate
 Dim index, FileList
 Dim objShell, objFile, objWMIService
 Dim dtmDate
 
 Set objShell = Wscript.CreateObject("WScript.Shell")
 Set WshNetwork = Wscript.CreateObject("WScript.Network")
 
 'Z:ドライブが使用されていれば切断
 
 RemoveNetworkDrive()
 
 'ネットワークドライブの接続
 WshNetwork.MapNetworkDrive "Z:", "file://127.0.0.1/work", False
 
 'バックアップ実行コマンドの作成
 strBackup = "C:\WINDOWS\system32\ntbackup.exe backup ""@C:\Documents and Settings\rikei\Local Settings\Application Data\Microsoft\Windows NT\NTBackup\data\FullBackup.bks"" /a /d ""ウィークリーバックアップセット"" /v:no /r:no /rs:no /hc:off /m normal /j ""FullBackup"" /l:s /f ""Z:\"""
 
 '本日の日付でファイル名を作成
 dtmDate = Date
 GetDate (dtmDate)
 
 '最後の"を取り除き、日付_full.bkfというファイル名を指定
 index = Len(strBackup) - 1
 strPath = Left(strBackup, index) & strTargetDate & "_full.bkf"
 
 'コマンドの実行
 objShell.Run (strPath)
 
 '???????????????????????
 '古いファイルの削除
 '???????????????????????
 '本日から何日以前のファイルを対象にするか指定
 dtmDate = Date - 13
 '指定条件でファイル名を生成
 GetDate (dtmDate)
 
 '
 Set objWMIService = GetObject("winmgmts:\\" & "127.0.0.1" & "\root\cimv2")
 Set FileList = objWMIService.ExecQuery _
   ("ASSOCIATORS OF {Win32_Directory.Name='C:\work\Upload'} Where " _
   & "ResultClass = CIM_DataFile")
 
 For Each objFile In FileList
  strDate = Left(objFile.LastModified,
  
    Wscript.echo strDate
  If strDate < strTargetDate Then
   'If objFile.Extension = “_full.bkf” Then
    'objFile.Delete
   'End If
  End If
 Next
 
 'ネットワークドライブの切断
 RemoveNetworkDrive()
 
 '終了処理
 Set WshNetwork = Nothing
 Set objShell = Nothing
 
 'ここまで
 
 '???????????????????????
 'ネットワークドライブの切断
 Private Function RemoveNetworkDrive()
  On Error Resume Next
  WshNetwork.RemoveNetworkDrive "Z:", False, True
 End Function
 '???????????????????????
 'ファイル名、Date整形
 Function GetDate(dtmDate)
     strDay = Day(dtmDate)
     If Len(strDay) < 2 Then
         strDay = "0″ & strDay"
     End If
     strMonth = Month(dtmDate)
     If Len(strMonth) < 2 Then
         strMonth = "0″ & strMonth"
     End If
     strYear = Year(dtmDate)
     strTargetDate = strYear & strMonth & strDay
 End Function
 '???????????????????????
 
#navi(../)

トップ   編集 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS