Da-JS: Befehle funktioniert beim eingeben in CMD aber nicht in .bat

Wenn ich diesen Befehl hier:
for /r F:\temp %i in (*.mvd) do @echo "%i" >> list.txt
in cmd eingebe, funktioniert er wunderbar.
Erstelle ich nun eine bat datei im gleichen Verzeichnis, wo ich vorher mit cmd drin war sagt er '"i" >> list.txt"' ist an dieser Stelle syntaktisch nicht verarbeitbar.
Kann mir jemand helfen?

  1. Hallo,

    Wenn ich diesen Befehl hier:
    for /r F:\temp %i in (*.mvd) do @echo "%i" >> list.txt
    in cmd eingebe, funktioniert er wunderbar.

    ja, würde ich auch erwarten.

    Erstelle ich nun eine bat datei im gleichen Verzeichnis, wo ich vorher mit cmd drin war sagt er '"i" >> list.txt"' ist an dieser Stelle syntaktisch nicht verarbeitbar.

    In einer Batchdatei hat das Zeichen '%' einige Zusatzbedeutungen. Für die Verwendung mit einer Batch-Variablen muss es daher verdoppelt werden. Innerhalb einer Batchdatei müsste deine Anweisung also so aussehen:

    for /r F:\temp %%i in (*.mvd) do @echo "%%i" >> list.txt

    So long,
     Martin

    --
    Zwischen Leber und Milz
    passt immer noch'n Pils.
    1. Super, danke!

      Hallo,

      Wenn ich diesen Befehl hier:
      for /r F:\temp %i in (*.mvd) do @echo "%i" >> list.txt
      in cmd eingebe, funktioniert er wunderbar.

      ja, würde ich auch erwarten.

      Erstelle ich nun eine bat datei im gleichen Verzeichnis, wo ich vorher mit cmd drin war sagt er '"i" >> list.txt"' ist an dieser Stelle syntaktisch nicht verarbeitbar.

      In einer Batchdatei hat das Zeichen '%' einige Zusatzbedeutungen. Für die Verwendung mit einer Batch-Variablen muss es daher verdoppelt werden. Innerhalb einer Batchdatei müsste deine Anweisung also so aussehen:

      for /r F:\temp %%i in (*.mvd) do @echo "%%i" >> list.txt

      So long,
      Martin