Forum: PC-Programmierung Batch Programmierung


von Maniac M. (maniac_m)


Lesenswert?

Hallo liebe Freunde,

ich habe hier zwei Dateien:

files.txt:
1
1.txt
2
2.txt
3
3.txt
4
New\5.txt
5
New\folder\

run.bat:
1
@echo off
2
set files=
3
for /f "tokens=1" %%i in (%1) do set files=%files%*%%i
4
set files=%files:~1%
5
echo %files%

Ausgeführt wird das so:
1
run files.txt
Klappt nicht...

So geht es komischerweise:
1
@echo off
2
set files=
3
for /f "tokens=1" %%i in (%1) do call :makestring %%i
4
set files=%files:~1%
5
echo %files%
6
7
goto :eof
8
9
:makestring
10
set files=%files%*%1
11
goto :eof
Warum? Geht es auch ohne Unterprogramm?


P.S.
Seid wann muss man sich denn hier anmelden?!

von sebastians (Gast)


Lesenswert?

Geht wahrscheinlich mit "delayed expansion".
Lies mal die Hilfe von setlocal, set und for. Hab gerade keinen 
Windows-PC vor mir, aber da müsste irgendwo drinstehen wie das geht.

setlocal /?
set /?
for /?

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.