Batchdatei zum Verschieben von Datei nach Kriterium Zeichen von-bis in Dateiname
Hallo Leute,
mir ist bekannt, dass es viele viele Beiträge zum Thema Datei verschieben mittels Batch gibt. Ich stehe aber vor einem Syntaxproblem und finde hier bisher keine Antwort.
Wie kann ich den movebefehl formulieren, dass er mir die Datei nach den 4-6 Zeichen auswertet. Mit * komm ich hier nicht weiter, weil ich hier Zahlen im Dateinamen habe, die sich wiederholen können.
Zum Verständnis ein Beispiel (Auswertung Zeichen 4-6):
Datei ARF010_cd0125010 soll nach Ordner d:\daten\010
Datei CAM011_ab0110562 soll nach Ordner d:\daten\011
etc.
Kann mir jemand weiter helfen?
Danke
miss_gis
mir ist bekannt, dass es viele viele Beiträge zum Thema Datei verschieben mittels Batch gibt. Ich stehe aber vor einem Syntaxproblem und finde hier bisher keine Antwort.
Wie kann ich den movebefehl formulieren, dass er mir die Datei nach den 4-6 Zeichen auswertet. Mit * komm ich hier nicht weiter, weil ich hier Zahlen im Dateinamen habe, die sich wiederholen können.
Zum Verständnis ein Beispiel (Auswertung Zeichen 4-6):
Datei ARF010_cd0125010 soll nach Ordner d:\daten\010
Datei CAM011_ab0110562 soll nach Ordner d:\daten\011
etc.
Kann mir jemand weiter helfen?
Danke
miss_gis
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 35536
Url: https://administrator.de/forum/batchdatei-zum-verschieben-von-datei-nach-kriterium-zeichen-von-bis-in-dateiname-35536.html
Ausgedruckt am: 23.01.2025 um 09:01 Uhr
5 Kommentare
Neuester Kommentar
Moin miss_gis,
unter der Voraussetung, dass
a) die Dateimaske der Quelldateien "??????_*." ist ...
[ also genau 6 Zeichen bis zum "_", dann irgendwas und Keine Dateiendung
b) Die DelayedExpansion standardmäßug aktiviert ist (so wie bei mir),
dann vom CMD-Prompt aus:
Als Mini-Bätschelchen:
In beiden Fällen ist das "ECHO [Output]" natürlich nur zu Debugzwecken und muss zum Scharfmachen gelöscht werden.
Gruß
Biber
unter der Voraussetung, dass
a) die Dateimaske der Quelldateien "??????_*." ist ...
[ also genau 6 Zeichen bis zum "_", dann irgendwas und Keine Dateiendung
b) Die DelayedExpansion standardmäßug aktiviert ist (so wie bei mir),
dann vom CMD-Prompt aus:
>for %i in (??????_*.) do @Set "x=%i" && @ECHO [Output] move %i d:\daten\!x:~3,3!\*.*
[Output] move ARF010_cd0125010 d:\daten\010\*.*
[Output] move CAM011_ab0110562 d:\daten\011\*.*
Als Mini-Bätschelchen:
::-----------snipp Move2DatenDirs.bat
@echo off & setlocal EnableDelayedExpansion
for %%i in (??????_*.) do Set "x=%%i" && ECHO [Output] move %%i d:\daten\!x:~3,3!\*.*
In beiden Fällen ist das "ECHO [Output]" natürlich nur zu Debugzwecken und muss zum Scharfmachen gelöscht werden.
Gruß
Biber
Moin miss_gis,
wir hatten mal ähnlicheSpinner Anforderungen wie Deine Kollegen hier Variablen und Wildcards
Da wird es kaum bei einem Einzeiler bleiben...
Werde da trotzdem mal basteln, aber wahrscheinlich nicht mehr heute.
Fangt aber ruhig schon ohne mich an
Gruß an die Kollegen..
Biber
wir hatten mal ähnliche
Da wird es kaum bei einem Einzeiler bleiben...
Werde da trotzdem mal basteln, aber wahrscheinlich nicht mehr heute.
Fangt aber ruhig schon ohne mich an
Gruß an die Kollegen..
Biber