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-Key: 477531

Url: https://administrator.de/contentid/477531

Printed on: May 2, 2024 at 08:05 o'clock

Member: ewnwm1
ewnwm1 Jul 25, 2019 at 22:19:16 (UTC)
Goto Top
Und wenn du vorher mit cd in die Quelle wechselst? So das kein Pfad mit ausgegeben wird.
Member: Problemkind83
Problemkind83 Jul 26, 2019 updated at 05:21:50 (UTC)
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
Mitglied: 140447
Solution 140447 Jul 26, 2019 updated at 06:40:01 (UTC)
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.
Member: Problemkind83
Problemkind83 Jul 26, 2019 at 10:43:04 (UTC)
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!
Member: Problemkind83
Problemkind83 Jul 26, 2019 at 10:49:01 (UTC)
Goto Top
Und huuuiiiiii
500 werden's nicht - aber geht schon ;)
bobby
Mitglied: 140447
140447 Jul 26, 2019 updated at 12:04:26 (UTC)
Goto Top
Da tut einem der Rücken ja schon vom zusehen weh face-smile.

Bitte und gleichfalls kühles WE.