Frage von prototype0815, 19

Batch script, problem mit umlenkungszeichen?

Hi,

ich habe mir ein Script gesucht das doppelte Zeilen in einer Textfile entfernt, sodass nur noch 1 der beiden identischen Zeilen in der Textfile zurück bleibt.

Nun kommen in meinen Textfiles aber alle möglichen Sonderzeichen vor die man sich vorstellen kann, weil ich mit bis zu 27 verschiedenen Sprachen arbeite.

Das aktuelle und größte Problem stellt dieses Zeichen dar ">". Kommt es in einer Zeile vor, so führt mein batch script den passenden Befehl dazu aus, und das ist eine umlenkung/umleitung in eine neue Datei!

Problemzeile: 166;Madeira muito comprida (>200mm)

(ist in Portugisisch, also nicht wundern bitte xD )

Hier erstellt das Programm eine Datei "200mm)" mit dem Inhalt "166;Madeira muito comprida ("

Vielleicht weiss jemand wie ich dieses Problem umgehen kann.

Danke & LG

Hier mein Code:

@echo off & setlocal 
set "Datei=8173-pt.stp" 
set "Bak=.bak" 
set /a LineNo=0 

move "%Datei%" "%Datei%%Bak%" 
copy nul "%Datei%">nul 
for /f "usebackq delims=" %%i in ("%Datei%%Bak%") do set "Zeile=%%i" & call :ProcessLine 
del "%Datei%%Bak%" 
goto :eof 

:ProcessLine 
set /a LineNo+=1 
echo Validiere Zeile %LineNo% ... 
rem echo %Zeile%
findstr /b /c:"%Zeile%" "%Datei%">nul || >>"%Datei%" echo %Zeile% 
goto :eof
Antwort
von prototype0815, 9

Diese Lösung habe ich mittlerweile gefunden...

http://www.ikt-blog.de/notepad-doppelte-zeilen-loeschen/

Hätte nicht gedacht das es so einfach ist.

Antwort
von Tschoo, 12

Hallo!

Es ist natürlich zu umgehen -- aber das ist in Batch keine Freude und du hast ja, wie du sagst, nicht nur das ">".

Nimm eine "richtige" Programmiersprache.

Gruß

Keine passende Antwort gefunden?

Fragen Sie die Community