Имя пользователя:
Пароль:
 

Показать сообщение отдельно

Ветеран


Contributor


Сообщения: 2735
Благодарности: 1699

Профиль | Отправить PM | Цитировать


Цитата Stolc:
Будет папка IN, в эту папку попадают файлы для обработки. После обработки файлы попадают в папку OUT.»
Ваш скрипт это не делает.
Вот вариант. Обрабатываются все файлы в инбоксе, обработанные идут в аутбокс, исходный перемещается в архив.
Это чистый vbs, CMD не задействован

Код: Выделить весь код
BoxIn = "Z:\Box_In"
BoxOut = "Z:\Box_Out"
BoxArc = "Z:\Box_Arc"

RegExp = "incoming.*\.txt"

Mre = Array("voronez", "Воронеж", _
            "tver", "Тверь", _
            "rostov", "Ростов", _
            "sochi", "Сочи", _
            "moskva", "Москва", _
            "orel", "Орел")

Set Mask = CreateObject("VBScript.RegExp")
Mask.Pattern = RegExp
Mask.IgnoreCase = True
Mask.Global = True
            
j = 0
With CreateObject("Scripting.FileSystemObject")
    Set Fold = .GetFolder(BoxIn)
    Set Files = Fold.Files

    For Each iFile In Files       ' Цикл по файлам в папке (как вариант решения)
        If Mask.Test(iFile.Name) Then
            Set Fin = .OpenTextFile(iFile, 1, False)
            Text = Fin.ReadAll
            Fin.Close
            
            For i = LBound(Mre) To UBound(Mre) Step 2
                Text = Replace(Text, Mre(i), Mre(i + 1))
            Next
            
            Set Fout = .OpenTextFile(BoxOut + "\" + iFile.Name, 2, True)
            Fout.Write Text
            Fout.Close
            
            If .FileExists(BoxArc + "\" + iFile.Name) Then .DeleteFile BoxArc + "\" + iFile.Name, True
            .MoveFile iFile, BoxArc + "\"
            j = j + 1
        End If
    Next
End With
MsgBox "Обработано " + CStr(j) + " файлов"
Мой второй CMD работает на порядок быстрее, чем первый, однако vbs работает мигом.

-------
Даже самая сложная проблема обязательно имеет простое, лёгкое для понимания, неправильное решение. Каждое решение плодит новые проблемы.

Это сообщение посчитали полезным следующие участники:

Отправлено: 16:12, 18-06-2019 | #18