Hallo Leutz
ich möche an eine Batchdatei Datei und Verzeichnissnamen übergeben die Leerzeichen enthalten,
dass das mit batch "langer Dateiname 1" "Verz 1" also doppelte Anführungszeichen geht ist mir soweit klar.
Wenn ich aber nun die Variablen mit z.B.
ECHO dir "%2\%1" >> neu.txt
in eine neue Datei schreibe werden die Anführungszeichen mit eingefügt
und der Inhalt sieht dann so aus
dir ""Verz 1"\"langer Dateiname 1""
wie kann ich die Anführungszeichen aus den Variablen unterdrücken damit ich
dir "Verz 1\langer Dateiname 1"
erhalte ?
schonmal Danke fürs lesen
clag
Programmieren - alles kontrollieren 4.934 Themen, 20.613 Beiträge
hallo ihr Leser und Schreiber Danke ........
hallo dalai,
... dein Tip war die Info die ich suchte und es funktioniert auch prinzipiell,
nur die Schleifte in der ich es so verwenden wollte, verträgt dummerweise das zusätzlich Tildezeichen nicht :(
For /F "tokens=*" %%g IN (C:\alltrack.xxx) DO (
echo %~2\%%g >> %1\-play-...%2.m3u
)
vielleicht hast du ja eine Idee wieso das in der Schleife nicht funktioniert
hier mal der gesamte etwas abgespeckte Code der ohne Tilde genau das erwartete tut
nur das in der generierten *.m3u Datei der Pfad in " " steht,
mit Tilde bricht die Schleife aber einfach ab.....
@echo off
echo.
echo -variable 1
echo %1
echo.
echo -variable 2
echo %2
echo.
echo -variable ~2
echo %~2
echo.
echo.
pause
Rem if exist %1\disc-01\*.flac DIR /B /ON %1\disc-01\*.flac > C:\alltrack.xxx
if exist %1\%2\*.mp3 DIR /B /ON %1\%2\*.mp3 > C:\alltrack.xxx
if not exist C:\alltrack.xxx goto message
For /F "tokens=*" %%g IN (C:\alltrack.xxx) DO (
echo %2\%%g >> %1\-play-...%2.m3u
)
del C:\alltrack.xxx
goto ende
:message
echo.
echo =============================================
echo.
echo .. keine FLAC, APE, WV, WAV, oder mp3 Datei gefunden !
echo.
echo =============================================
echo.
pause
:ende
del C:\alltrack.xxx
Gruß staubwolke