次のようにvbsスクリプトを呼び出すバッチファイルがあります:
cd d:
cd D:\Application\Pentasafe\HKPentasafe\DailyLog\Deployment Code
cscript CommandProcessing.vbs
del /s "D:\Application\Pentasafe\HKPentasafe\DailyLog\Command Usage by Command\Tempworkspace\*.txt"
このバッチ ファイルは、この vbs (コマンド処理) を呼び出し、tempworkspace 内のファイルを削除します。
Const ForReading = 1
Const ForWriting = 2
Dim Source, Dest
objStartFolder = "D:\Application\Pentasafe\HKPentasafe\DailyLog\Command Usage by Command\Tempworkspace"
objDestFolder = "D:\Application\Pentasafe\HKPentasafe\DailyLog\Command Usage by Command\Scripted"
Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objFolder = objFSO.GetFolder(objStartFolder)
Set colFiles = objFolder.Files
'Only one file expected.
For Each objFile in colFiles
Source = ObjStartFolder + "\" + objFile.Name
Dest = ObjDestFolder + "\" + objFile.Name
wscript.echo Source
wscript.echo Dest
Next
Set objFile = objFSO.OpenTextFile(Source, ForReading)
Set objFile1 = objFSO.CreateTextFile(Dest, ForWriting)
Do Until objFile.AtEndOfStream
Strline = objFile.ReadLine
'wscript.echo Strline
If InStr(Strline,"CHGUSRPRF") Then
Prependtext = "CHGUSRPRF"
wscript.echo Strline
objFile1.WriteLine Strline
ElseIf InStr(Strline,"STRSQL") Then
Prependtext = "STRSQL"
wscript.echo Strline
objFile1.WriteLine Strline
ElseIf InStr(Strline,"STRDFU") Then
Prependtext = "STRDFU"
wscript.echo Strline
objFile1.WriteLine Strline
ElseIf InStr(Strline,"UPDATA") Then
Prependtext = "UPDATA"
wscript.echo Strline
objFile1.WriteLine Strline
ElseIf InStr(Strline,"EZVIEW") Then
Prependtext = "EZVIEW"
wscript.echo Strline
objFile1.WriteLine Strline
ElseIf InStr(Strline,"WRKQRY") Then
Prependtext = "WRKQRY"
wscript.echo Strline
objFile1.WriteLine Strline
ElseIf InStr(Strline,"WRKUSRPRF") Then
Prependtext = "WRKUSRPRF"
wscript.echo Strline
objFile1.WriteLine Strline
ElseIf InStr(Strline, " ") Then
If (Prependtext <> "") Then
objFile1.WriteLine Replace(Strline, " ", Prependtext)
wscript.echo Replace(Strline, " ", Prependtext)
else
objFile1.WriteLine Strline
End If
Else
Prependtext = ""
objFile1.WriteLine Strline
End If
Loop
objFile.Close
objFile1.Close
ただし、このジョブをウィンドウ サーバー 2008 でスケジュールすると、常に vbs スクリプトが呼び出されません。むしろそれをスキップして削除ジョブを実行します。バッチファイルをダブルクリックして手動で実行しようとしました..ウィンドウサーバー2008にアップグレードするまで、ウィンドウXPでうまく動作します.誰かこのトピックについて何か考えがありますか?