problemkind83
Goto Top

Zeile aus Textdatei in neue Datei kopieren

Hi,

ich habe ein Problem mit einer Batch Datei.
Ich bin totaler Neuling und versuche mich in das Thema einzuarbeiten.
Ich habe folgendes Problem.
Ich habe etliche Dateien und muss eine bestimmte Zeile kopieren und in einer neuen Datei auflisten.
Soweit alles OK - das habe ich hinbekommen.
ABER...
In der neuen Datei steht leider auch der Pfad mit Dateiname der kopierten Quelle.

Beispiel

Quelle c:\test\Datei1.txt(Datei2.txt,...) :
xxxxx
xxxxxx
blablablabla,test1.tif,blablabla
_

Ergebnisdatei
C:\test\Datei1.txt:blablablabla,test1.tif,blablabla
C:\test\Datei2.txt:blablablabla,test2.tif,blablabla
C:\test\Datei3.txt:blablablabla,test3.tif,blablabla

Batch
@echo off & setlocal
set "Ziel=C:\test\Ergebnis-%date%.txt"
set "Quelle=C:\Test"

for /f "delims=" %%i in ('findstr ".tif" %Quelle%\*.txt') do echo %%i>>%Erg%

Ich sehe irgendwie den Wald vor lauter Bäumen nicht....
Wäre schön, wenn mir jemand helfen könnte.

Danke

Content-ID: 477531

Url: https://administrator.de/forum/zeile-aus-textdatei-in-neue-datei-kopieren-477531.html

Ausgedruckt am: 23.12.2024 um 13:12 Uhr

ewnwm1
ewnwm1 26.07.2019 um 00:19:16 Uhr
Goto Top
Und wenn du vorher mit cd in die Quelle wechselst? So das kein Pfad mit ausgegeben wird.
Problemkind83
Problemkind83 26.07.2019 aktualisiert um 07:21:50 Uhr
Goto Top
Moin,

leider ist das Ergebnis das gleiche....
Hmmmm - ich glaube ich muss einen anderen Weg als mit findstr einschlagen...
Hat jemand einen Tipp für mich?

Danke
140447
Lösung 140447 26.07.2019 aktualisiert um 08:40:01 Uhr
Goto Top
Wieso arbeitet man sich heutzutage noch in Batch ein 🤔?

Naja muss jeder selbst wissen ob er auf nem Bobbycar 500km fahren will ...
@echo off & setlocal
set "Ziel=C:\Test\Ergebnis-%date%.txt"  
set "Quelle=C:\Test"  
>"%Ziel%" (for /f "tokens=2,* delims=:" %%a in ('findstr /i "\.tif" "%Quelle%\*.txt"') do echo(%%b)  

Heute nutzt man für sowas eher gleich Powershell, Grep &Co.

Powershell
Get-Content 'c:\Test\*.txt' | ?{$_ -match '\.tif'} | Set-Content 'c:\test_ergebnis.txt'  
Grep
grep -h '\.tif' *.txt >result.txt  
Usw. Schon ein Wunder das man dafür einen Forums-Thread verschwenden muss zumal das an jeder Ecke im Web und auch hier im Forum nachzulesen ist.
Problemkind83
Problemkind83 26.07.2019 um 12:43:04 Uhr
Goto Top
Hallo Routerboard,

Danke für die Hilfe - ich werde es auch mit PowerShell versuchen.

Danke noch einmal für Deine Hilfe und noch ein schönes Wochenende!
Problemkind83
Problemkind83 26.07.2019 um 12:49:01 Uhr
Goto Top
Und huuuiiiiii
500 werden's nicht - aber geht schon ;)
bobby
140447
140447 26.07.2019 aktualisiert um 14:04:26 Uhr
Goto Top
Da tut einem der Rücken ja schon vom zusehen weh face-smile.

Bitte und gleichfalls kühles WE.