Die von uns verwendete HR-Software ermöglicht den Import von CSV-Dateien. Der von einem Drittanbieter stammende Dump wird jedoch nicht als CSV-Datei formatiert.Mehrere Vorkommen eines Kommas durch ein Komma ersetzen
Ich habe eine Batch-Datei geschrieben, um es in eine CSV-Datei zu verarbeiten, aber es gibt einen Teil der Dump-Datei, wo es mehrere Leerzeichen geben könnte (es kann für jede Zeile anders sein) und wenn ich Leerzeichen durch Kommas I ersetzen am Ende mit mehreren Kommas.
Wie kann ich meine Batchdatei aktualisieren, um jedes Vorkommen von zwei oder mehr Kommas auf ein Komma zu ändern?
Original-Datei:
096 Parisella, Onorato - Perm 030417 05:53
000 030417 06:44
127 Thomas, Vincent - Perm 030417 06:44
040 Ram, Gurdial - Perm 030417 07:09
100 Smano, Petros - Perm 030417 07:12
128 Machenbach, Werner - Perm 030417 07:13
147 Samanovic, Milan 030417 07:14
047 Hopkins, Hugo - Perm 030417 07:16
Meine aktuelle Batch-Datei:
@echo off
setlocal EnableExtensions DisableDelayedExpansion
set "search= - Perm"
set "replace="
set "textFile=FINGERTEC RAW DATA*.txt"
set "rootDir=."
for %%j in ("%rootDir%\%textFile%") do (
for /f "delims=" %%i in ('type "%%~j" ^& break ^> "%%~j"') do (
set "line=%%i"
setlocal EnableDelayedExpansion
set "line=!line:%search%=%replace%!"
>>"%%~j" echo(!line!
endlocal
)
)
set "search= "
set "replace=,"
set "textFile=FINGERTEC RAW DATA*.txt"
set "rootDir=."
for %%j in ("%rootDir%\%textFile%") do (
for /f "delims=" %%i in ('type "%%~j" ^& break ^> "%%~j"') do (
set "line=%%i"
setlocal EnableDelayedExpansion
set "line=!line:%search%=%replace%!"
>>"%%~j" echo(!line!
endlocal
)
)
endlocal
Stromausgang:
096,Parisella,,Onorato,,,,,,,,,,,,030417,05:53
000,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,030417,06:44
127,Thomas,,Vincent,,,,,,,,,,,,,,,030417,06:44
040,Ram,,Gurdial,,,,,,,,,,,,,,,,,,030417,07:09
100,Smano,,Petros,,,,,,,,,,,,,,,,,030417,07:12
128,Machenbach,,Werner,,,,,,,,,,,,030417,07:13
147,Samanovic,,Milan,,,,,,,,,,,,,,,,,,,,,030417,07:14
047,Hopkins,,Hugo,,,,,,,,,,,,,,,,,030417,07:16
Bitte beachten Sie, dass ich keine Tools von Drittanbietern nutzen können.
Dies ist, was ich war nach. Die Ausgabe ist was ich wollte. – James