Unterschiedliche Dateinamen in einem Ordner in verschiedene Variablen schreiben
Hallo zusammen,
vielleicht kann mir einer bei einer einfachen Batch (kein PowerShell) Programmierung helfen.
Ich habe in einem Ordner bis zu 3 Dateien.
Diese 3 Dateinamen sollen mit einer Batch abgefragt werden. Jeder Dateiname soll dann in eine eigene Variable geschrieben werden. ( mon1,mon2,mon3 )
Von da aus komme ich dann weiter.
Kann mir da vielleicht einer aus dieser Gruppe helfen?
Hier einmal mein bisheriger Code
https://pastebin.com/zuuM54aw
Ich habe versucht eine Variable namens Counter zu erstellen und er soll diese in der For Schleife hochzählen.
Die Idee war dann jeden Dateinamen in eine dynamische Variable zu schreiben (mon%Counter%) .
Ziel ist es die Dateinamen ( max sind es 3 Stück mit variablen Namen) in einzelne Variablen zu schreiben.
Vielen Dank für die Hilfe
vielleicht kann mir einer bei einer einfachen Batch (kein PowerShell) Programmierung helfen.
Ich habe in einem Ordner bis zu 3 Dateien.
Diese 3 Dateinamen sollen mit einer Batch abgefragt werden. Jeder Dateiname soll dann in eine eigene Variable geschrieben werden. ( mon1,mon2,mon3 )
Von da aus komme ich dann weiter.
Kann mir da vielleicht einer aus dieser Gruppe helfen?
Hier einmal mein bisheriger Code
https://pastebin.com/zuuM54aw
Ich habe versucht eine Variable namens Counter zu erstellen und er soll diese in der For Schleife hochzählen.
Die Idee war dann jeden Dateinamen in eine dynamische Variable zu schreiben (mon%Counter%) .
Ziel ist es die Dateinamen ( max sind es 3 Stück mit variablen Namen) in einzelne Variablen zu schreiben.
Vielen Dank für die Hilfe
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 426319
Url: https://administrator.de/forum/unterschiedliche-dateinamen-in-einem-ordner-in-verschiedene-variablen-schreiben-426319.html
Ausgedruckt am: 03.05.2025 um 02:05 Uhr
3 Kommentare
Neuester Kommentar
Hallo,
1. was ist hypershell?
2. Poste Deinen Code direkt im Forum und nutze Codetags. Du findest diese links neben dem Editorfenster, vorletztes Symbol von unten.
Und hast Du mal die Forumssuche bemüht?
Dateinamen feststellen
Gruss Penny.
1. was ist hypershell?
2. Poste Deinen Code direkt im Forum und nutze Codetags. Du findest diese links neben dem Editorfenster, vorletztes Symbol von unten.
Und hast Du mal die Forumssuche bemüht?
Dateinamen feststellen
Gruss Penny.

Deine Enter Taste scheint zu klemmen 
Wenn dein Dir Befehl etwas ausgeben soll, dann müssen die Verzeichnisse schon existieren, warum also nochmal erzeugen (wenn schon, dann mit angehägtem 2>NUL zum unterdrücken von Fehlermeldungen.
Außerdem erzeugt md/mkdir zwischenliegende Verzecihnisse in einem Schritt, also ist nur der 2.te Befehl nötig.
Wenn in einem (code block) Variablen gesetzt und ausgegeben werden brauchst du DelayedExpansion und die Variablen Namen mit ! statt %.
Gruß
LotPings
Wenn dein Dir Befehl etwas ausgeben soll, dann müssen die Verzeichnisse schon existieren, warum also nochmal erzeugen (wenn schon, dann mit angehägtem 2>NUL zum unterdrücken von Fehlermeldungen.
Außerdem erzeugt md/mkdir zwischenliegende Verzecihnisse in einem Schritt, also ist nur der 2.te Befehl nötig.
Wenn in einem (code block) Variablen gesetzt und ausgegeben werden brauchst du DelayedExpansion und die Variablen Namen mit ! statt %.
@echo off
setlocal EnableDelayedExpansion
set COUNTER=0
mkdir c:\Daten\Erkennung\Monitore\ 2>NUL
For /F "delims=" %%i in ('
dir /B C:\Daten\Erkennung\Monitore\*.* 2^>Nul
') do (
set "mon!COUNTER!=%%~ni"
set /A COUNTER+=1
)
echo %COUNTER% Monitore gefunden
set mon
pause
Gruß
LotPings