8 文字の長さの DBF ファイルを生成する古い FoxPro プログラムを実行しているシステムがあります。私たちは毎日プログラム フォルダのバックアップを作成していますが、午後 5 時にプログラムが大量の不要な dbf を生成したため、迷惑です。バックアップ スクリプトに del *.dbf を設定するだけですが、プログラムを実行するために必要な名前に文字が含まれる dbf がいくつかあります。
ファイルは F:\Clean This\ にあります。
数字のタイトルが付いた .dbf ファイルはすべて削除する必要があります
アルファベット順のタイトルの .dbf ファイルはそのままにしておく必要があります
Set objFSO = CreateObject("Scripting.FileSystemObject")
objStartFolder = "F:\Clean This\"
Set objFolder = objFSO.GetFolder(objStartFolder)
Set colFiles = objFolder.Files
collide = "ABCEDFGHIJKLMNOPQRSTUVWXYZ"
For Each objFile in colFiles
If UCase(objFSO.GetExtensionName(objFile.name)) = "DBF" Then
num = 1
For num = 1 to 26 'find files with names start with # 0-9
If Left(objFile.Name,1) = Left(collide,num) Then
Wscript.Echo "Save " & objFile.Name
Else If int(Left(objFile.Name,1)) > 0 Then
Wscript.Echo "Delete!"
End IF
End If
Next
End If
Next
Ifステートメントの方がうまくいくことがわかるように、どうすればうまくいくかわかりません。2 つの Wscript.Echo コマンドは単なるプレースホルダーです。これ以外の方法では、dos 環境で機能する適切な削除機能を見つけることができないためです (私は既に kill を試しましたが、いいえ)。
提案と改善をいただければ幸いです。