Windows Batch-Skript * (Stern) als Text gelesen?

Ich schreibe ein Stapelskript, um eine Textdatei mit fester Breite in das CSV-Format zu konvertieren. Folgendes habe ich bisher geschrieben:

@echo off
setlocal enabledelayedexpansion


    for /F "tokens=*" %%A in (HRV*.txt) do (
    set var=%%A
    set mer=!var:~6,11!
    set cr=!var:~18,19!

    set dt=!var:~42,30!
    set aa=!var:~72,30!
    set ab=!var:~102,30!
    set ac=!var:~132,15!

    set ad=!var:~147,30!
    set ae=!var:~177,30!

    set af=!var:~283,36!

    set ag=!var:~318,3!
    set ah=!var:~329,7!
    set ai=!var:~337,17!
    set aj=!var:~442,2!
    set ak=!var:~460,15!
    set al=!var:~475,2!
    set am=!var:~482,15!

    set y=!mer!.!cr!,"!dt!","!aa!","!ab!","!ac!","!ad!","!ae!",="!af!","!ag!",="ah","ai","aj",="ak","al",="am"
    echo !y!>> converted.csv
    )

pause

Das Problem besteht darin, dass das Programm beim Ausführen nicht abgeschlossen werden kann und die Meldung "Das System kann die Datei HRV * .txt nicht finden" ausgibt. Ich habe dann für Schleife auf @ geände

for /F "tokens=*" %%A in (*.txt) do ( ...

Aber der Fehler wurde in "Das System kann die Datei * .txt nicht finden" geändert.

Anscheinend wird der Stern * als Text gelesen? hat das etwas mit "token + *" zu tun? Wie kann ich dafür sorgen, dass das Skript für alle Dateien ausgeführt wird, die mit HRV beginnen?

Antworten auf die Frage(2)

Ihre Antwort auf die Frage