необходимо удалить \ / ä и специальные символы из списка файлов, используя файл .bat - PullRequest
0 голосов
/ 21 октября 2019

Мне нужно окно bat-файла, которое будет размещено в пути к серверу. Где все мои файлы данных размещены в другом пути. 1. После того, как я запустил файл bat, он должен найти список файлов по указанному пути. 2. Он должен искать косую черту (/), косую черту (), специальные символы и набор латинских символов (например, ä и т. Д.,) в каждом файле и замените их пробелами.

Исходный файл выглядит как

Исправленный файл

Aance petty cash - Site 21/03/2019||Y|17-OCT-19|17-OCT-19|17-OCT-19|KMADRZYK|MANUAL W|SAKM18OCT19|S|158 \\fpp01\Finance\Finance\AP_PROCESSING\1_MEN|SAR
Aance petty cash - Site 21/03/2019||Y|17-OCT-19|17-OCT-19|17-OCT-19|KMADRZYK|MANUAL W|SAKM18OCT19|S|\krv|SAR
Aance petty cash - Site 21/03/2019||Y|17-OCT-19|17-OCT-19|17-OCT-19|KMADRZYK|MANUAL W|SAKM18OCT19|M|sd01\Finance\Finance\AP_PROCESSING\1_MEN |SAR
Aance petty cash - Site 21/03/2019||Y|17-OCT-19|17-OCT-19|17-OCT-19|KMADRZYK|MANUAL W|SAKM18OCT19|M|159\fpp01\Finance\Finance\AP_PROCESSING\1_MEN |SAR
Studying and updating dmmmy       ||Y|17-OCT-19|18-OCT-19|18-OCT-19|KMADRZYK|MANUAL W|SAKM18OCT19|T|160 -|SAR
Johannes Märkl Monatsrechnung ----||N|17-OCT-19|18-OCT-19|18-OCT-19|KMADRZYK|MANUAL W|SAKM18OCT19|S||SAR

послеисправляя файл

Aance petty cash - Site 21 03 2019||Y|17-OCT-19|17-OCT-19|17-OCT-19|KMADRZYK|MANUAL W|SAKM18OCT19|S|158   fpp01 Finance Finance AP_PROCESSING 1_MEN|SAR
Aance petty cash - Site 21 03 2019||Y|17-OCT-19|17-OCT-19|17-OCT-19|KMADRZYK|MANUAL W|SAKM18OCT19|S| krv|SAR
Aance petty cash - Site 21 03 2019||Y|17-OCT-19|17-OCT-19|17-OCT-19|KMADRZYK|MANUAL W|SAKM18OCT19|M|sd01 Finance Finance AP_PROCESSING 1_MEN |SAR
Aance petty cash - Site 21 03 2019||Y|17-OCT-19|17-OCT-19|17-OCT-19|KMADRZYK|MANUAL W|SAKM18OCT19|M|159 fpp01 Finance Finance AP_PROCESSING 1_MEN |SAR
Studying and updating dmmmy       ||Y|17-OCT-19|18-OCT-19|18-OCT-19|KMADRZYK|MANUAL W|SAKM18OCT19|T|160 -|SAR
Johannes Märkl Monatsrechnung ----||N|17-OCT-19|18-OCT-19|18-OCT-19|KMADRZYK|MANUAL W|SAKM18OCT19|S||SAR

этот тип многих файлов будет присутствовать в пути к серверу. Итак, мне нужно искать каждый файл и исправлять их.

1 Ответ

1 голос
/ 22 октября 2019

Вы должны использовать Regex в vbscript с командным файлом: вы можете увидеть Демо здесь

@echo off
Title Replace String using Regex with vbscript
Set "InputFile=Test.txt"
Set "TmpFile=%Tmp%\%~n0.txt"
:: To write Result in a temporary file
Call :Search_Replace "%InputFile%" "%TmpFile%"
:: Replace and move contents from the temporary file to the original
Move /Y "%TmpFile%" "%InputFile%">nul
Start "" "%InputFile%" & Exit
::-----------------------------------------------------------------------------------
:Search_Replace <InputFile> <TmpFile>
(
    echo WScript.StdOut.WriteLine Search_Replace(Data^)
    echo Function Search_Replace(Data^)
    echo Dim strPattern, strReplace, strResult,oRegExp
    echo Data = "%~1" 
    echo Data = WScript.StdIn.ReadAll
    echo strPattern = "[\\\/\/]"
    echo strReplace = " "
    echo Set oRegExp = New RegExp
    echo oRegExp.Global = True 
    echo oRegExp.IgnoreCase = True 
    echo oRegExp.Pattern = strPattern
    echo strResult = oRegExp.Replace(Data,strReplace^)
    echo Search_Replace = strResult
    echo End Function
)>"%tmp%\%~n0.vbs"
cscript /U //nologo "%tmp%\%~n0.vbs" < "%~1" > "%~2"
If Exist "%tmp%\%~n0.vbs" Del "%tmp%\%~n0.vbs"
Exit /B
::----------------------------------------------------------------------------------
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...