teklan
Goto Top

Eine Datei in meine Batch-Datei ziehen und verarbeiten

Hallo,
mir wurde bereits in diesem Beitrag:

Datei auslesen und bestimmte Wörter in neue Datei schreiben mit Batch

grundlegend geholfen (von bastla!), möchte aber nun mein Script noch etwas erweitern.

So sieht es im Moment aus:

@echo off & setlocal
set "Ein=meinedatei.txt"  
set "Aus=meinedatei.dat"  

if exist "%Aus%" del "%Aus%"  
set Zuletzt=-
for /f "tokens=2" %%i in ('findstr ".rst .pop" "%Ein%"^|sort') do call :ProcessLink "%%~i"  
goto :eof

:ProcessLink
if %1==%Zuletzt% goto :eof
set Zuletzt="%~1"  
 (echo /%~1)>>"%Aus%"  
nun möchte ich aber nicht immer "meinedatei.txt" und "meinedatei.dat" eingeben/ändern, sondern würde es gerne so realisieren,
dass ich nur die "meinedatei.txt" auf meine Batch-Datei draufziehe, und dann automatisch "Ein" und "Aus" angepasst werden, und die Batch durchläuft!
(denn ich möchte mit dem Script nicht nur eine Datei behandeln, sondern immer verschiedene)

Ist das möglich?

gruss

Content-Key: 70869

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

Printed on: April 19, 2024 at 08:04 o'clock

Member: bastla
bastla Oct 13, 2007 at 15:37:14 (UTC)
Goto Top
Hallo teklan!

@echo off & setlocal
set "Ein=%~1"  
set "Aus=%~dpn1.dat"  
...
Den Rest der Batchdatei kannst Du unverändert lassen.

Grüße
bastla

P.S.: Es gibt eine neuere Version im anderen Thread ...
Member: bastla
bastla Oct 13, 2007 at 15:46:03 (UTC)
Goto Top
... Nachtrag: Da jetzt die Übergabe einer Datei erwartet wird, solltest Du dies (für einen ev Aufruf über CMD) besser noch etwas absichern, zB mit
@echo off & setlocal
if [%1]== echo Aufruf mit: Batchdatei Eingabedatei.txt & goto :eof
if not exist %1 echo Eingabedatei "%~1" nicht vorhanden! & goto :eof  
set "Ein=%~1"  
set "Aus=%~dpn1.dat"  

Grüße
bastla
Member: teklan
teklan Oct 13, 2007 at 15:59:35 (UTC)
Goto Top
super...vielen Dank, hab alles übernommen, auch die neue Version aus dem anderen Beitrag, und klappt super!
...wenn ich die .bat eventuell in eine .exe umwandle...bleibt dann diese "reinzieh-Funktion" erhalten?
Member: bastla
bastla Oct 13, 2007 at 16:03:29 (UTC)
Goto Top
Hallo teklan!

...wenn ich die .bat eventuell in eine .exe umwandle...bleibt dann diese "reinzieh-Funktion" erhalten?
Sollte eigentlich so sein.

Grüße
bastla
Member: teklan
teklan Oct 13, 2007 at 16:10:20 (UTC)
Goto Top
ok also nochmal vielen Dank für alles! face-smile