'stblib2.vbs '----------------------------------------------- ' 1.3.2 (E-1) サブ tmcm:ファイル候補リスト作成(メイン) '----------------------------------------------- Sub TmcmProcLst(curTmcmFile,patternchr) Dim fsoObj Dim objTextSrc Set fsoObj = CreateObject("Scripting.FileSystemObject") ' 候補リストがあれば削除する If fsoObj.FileExists(LIST_FILE_TM) Then Call fsoObj.DeleteFile(LIST_FILE_TM) End If ' 候補リスト準備 Set objTextSrc = fsoObj.OpenTextFile(LIST_FILE_TM, 8, True, 0) ' 候補リストを作成する ' ' フォルダがであるかをチェック If fsoObj.FolderExists(ZIP_BASEPATH) Then 'リスト作成メイン実行 Call CreTmcmFList(fsoObj,ZIP_BASEPATH,objTextSrc,curTmcmFile,patternchr) Else WScript.Echo now & MSGLEVEL_S & _ "TmcmProcLst デイレクトリなしのためリスト処理を停止" & _ vbCrLf & ZIP_BASEPATH WScript.Quit (10) End If ' ログファイルクローズ objTextSrc.Close ' オブジェクト開放 Set objTextSrc = Nothing Set fsoObj = Nothing End Sub '----------------------------------------------- ' 1.3.3 (E-1-1)サブ tmcmファイル候補リスト作成(サブ) '----------------------------------------------- Sub CreTmcmFList(fsoObj,inFolderName,objText,curTmcmFile,patternchr) Dim fsoFolder Dim fsoSubFolder Dim fsoFile Dim itmcm WScript.Echo now & MSGLEVEL_I & "確認フォルダ :" & inFolderName WScript.Echo now & MSGLEVEL_I & "除外ファイル :" & curTmcmFile WScript.Echo now & MSGLEVEL_I & "削除候補リスト :" & LIST_FILE_TM itmcm = 0 ' フォルダオブジェクト取得 Set fsoFolder = fsoObj.GetFolder(inFolderName) For Each fsoFile In fsoFolder.Files ' 削除候補ファイルリストを出力 IF not trim(fsoFile.name) = curTmcmFile THEN '以下のファイル名で始まるファイルリストを対象とする IF left(fsoFile.name,len(patternchr)) = patternchr THEN objText.WriteLine fsoFile.name itmcm = itmcm + 1 END IF END IF Next WScript.Echo now & MSGLEVEL_I & "削除候補対象 : " & itmcm & " 件 " End Sub '----------------------------------------------- ' 1.3.4 (E-2) 候補リストを元にして削除処理実行 '----------------------------------------------- Sub TmcmProcDel() Dim fsoObj Dim objTextSrc Dim objTextTgt Dim objFSO ' ファイルシステムオブジェクト Dim objTextStream ' テキストストリームオブジェクト Dim strText ' テキスト内容 Dim delfile Dim itmcm WScript.Echo now & MSGLEVEL_I & "削除処理実行 :" & ZIP_BASEPATH ' ' 候補リストによる削除 Set objFSO = WScript.CreateObject("Scripting.FileSystemObject") Set objTextStream = objFSO.OpenTextFile(LIST_FILE_TM, 1) IF Not objFSO.FolderExists(ZIP_BASEPATH) THEN WScript.Echo now & MSGLEVEL_S & "TmcmProcDel デイレクトリなしでファイル削除停止" & _ vbCrLf & ZIP_BASEPATH WScript.Quit (10) END IF itmcm = 0 Do Until objTextStream.AtEndOfLine = True strText = objTextStream.ReadLine delfile = ZIP_BASEPATH & "\" & trim(strText) objFSO.DeleteFile delfile, true itmcm = itmcm + 1 WScript.Echo now & MSGLEVEL_I & "FILE DELETE : " & trim(strText) Loop objTextStream.Close WScript.Echo now & MSGLEVEL_I & "削除処理結果 : " & itmcm & " 件 " Set objTextStream = Nothing Set objFSO = Nothing End Sub