Platzhalter in Filename durch Variable ersetzen
Ich hoffe auf Ihre Hilfe
Es geht darum, eine vierstellige Variable über die Commandline zu erfassen und diese innerhalb des Filenamens auf Position 5 bis 8 einzusetzen.
Was ist hier falsch? Ich kann die Variable wohl eingeben, diese wird jedoch nicht an die nächsten Befehle weitergegeben.
@echo off
set /p EINGABE=Lierferdatum:
rem Start File1 ***
CD U:\ZahlungsDateien\Input
if exist %"2013"&EINGABE&"????????p" goto existiert
echo Datei nicht gefunden!
goto ENDE1
:existiert
echo die Datei existiert!
COPY "2013"&EINGABE&"????????p" U:\ZahlungsDateien\Input\Archiv
RENAME "2013"&EINGABE&"????????p" ESR01.txt
rem ftp -s:U:\ZahlungsDateien\Script\FTP_PSA_File1.ftp
rem del ESR01.txt
:ENDE1
Besten Dank für die Hilfe.
Burkart
Es geht darum, eine vierstellige Variable über die Commandline zu erfassen und diese innerhalb des Filenamens auf Position 5 bis 8 einzusetzen.
Was ist hier falsch? Ich kann die Variable wohl eingeben, diese wird jedoch nicht an die nächsten Befehle weitergegeben.
@echo off
set /p EINGABE=Lierferdatum:
rem Start File1 ***
CD U:\ZahlungsDateien\Input
if exist %"2013"&EINGABE&"????????p" goto existiert
echo Datei nicht gefunden!
goto ENDE1
:existiert
echo die Datei existiert!
COPY "2013"&EINGABE&"????????p" U:\ZahlungsDateien\Input\Archiv
RENAME "2013"&EINGABE&"????????p" ESR01.txt
rem ftp -s:U:\ZahlungsDateien\Script\FTP_PSA_File1.ftp
rem del ESR01.txt
:ENDE1
Besten Dank für die Hilfe.
Burkart
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 206107
Url: https://administrator.de/forum/platzhalter-in-filename-durch-variable-ersetzen-206107.html
Ausgedruckt am: 14.05.2025 um 11:05 Uhr
2 Kommentare
Neuester Kommentar
Hallo Burkart, willkommen im Forum.
Ich denke du bringst da ein paar Sprachen durcheinander. In Batch werden Variablen in Prozentzeichen gepackt und Stringverknüpfung funktioniert ganz ohne & (das wäre dann Befehlsverkettung).
In U:\ZahlungsDateien\Input liegt eine Datei 20130506xxxxxxxxp. Die Eingabe ist folgerichtig 0506:
Grüße
rubberman
Ich denke du bringst da ein paar Sprachen durcheinander. In Batch werden Variablen in Prozentzeichen gepackt und Stringverknüpfung funktioniert ganz ohne & (das wäre dann Befehlsverkettung).
In U:\ZahlungsDateien\Input liegt eine Datei 20130506xxxxxxxxp. Die Eingabe ist folgerichtig 0506:
@echo off &setlocal
set /p EINGABE=Lierferdatum:
rem Start File1 ***
CD /d "U:\ZahlungsDateien\Input"
if not exist "2013%EINGABE%????????p" (
echo Datei nicht gefunden!
pause
goto :eof
)
echo die Datei existiert!
COPY "2013%EINGABE%????????p" "Archiv\"
RENAME "2013%EINGABE%????????p" "ESR01.txt"
rem ftp -s:U:\ZahlungsDateien\Script\FTP_PSA_File1.ftp
rem del ESR01.txt
pause
Grüße
rubberman