fragemeister

Bestimmte Anzahl von Dateien verschieben

Hallo,

ich habe einen Ordner mit vielen Dateien (unterschiedlichste Namen) und möchte jetzt eine bestimmte Anzahl von Dateien in andere Ordner verschieben.

Ein Ordner hat z.B. 100 verschiedene Dateien, dann sollten jeweils 20 Dateien in Ordner1, weitere 20 in Ordner2, u.s.w. verschoben werden.

Die Auswahl der Dateien kann nach Namen oder nach Erstellungsdatum erfolgen.

Der Hintergrund hierzu ist, dass ich ein Programm zur Weiterverarbeitung der Dateien verwende, das nur eine bestimmte Menge an Dateien laden kann.

Kann man die Aufteilung der Dateien mit einer Batchdatei realisieren?

Für Lösungen oder Lösungsansätze wäre ich dankbar.


Viele Grüße und schonmals Danke,

Fragemeister
Auf Facebook teilen
Auf X (Twitter) teilen
Auf Reddit teilen
Auf Linkedin teilen

Content-ID: 38410

Url: https://administrator.de/forum/bestimmte-anzahl-von-dateien-verschieben-38410.html

Ausgedruckt am: 29.04.2025 um 03:04 Uhr

Biber
Biber 21.08.2006 um 13:51:40 Uhr
Goto Top
Moin Fragemeister,

gibt verschiedene Ansätze, die Dich via Batch zu einer Lösung führen könnten...

Einer wäre skizziert:
@echo off & setlocal
Set /a cnt=0
For /f %%i in ('dir /b /a:d /o:d x:\meinQuellverzeichnis\*.*') do call: DivideEtImpera %%i  
goto :eof

:DivideEtImpera
Set /a cnt=%cnt% +1
If %cnt% GEQ 100 goto :eof
if %cnt% GEQ 80 (( copy "x:\meinQuellverzeichnis\%1" y:\ordner80ff\*.*) && goto :eof)  
if %cnt% GEQ 60 (( copy "x:\meinQuellverzeichnis\%1" y:\ordner60ff\*.*) && goto :eof)  
if %cnt% GEQ 40 (( copy "x:\meinQuellverzeichnis\%1" y:\ordner40ff\*.*) && goto :eof)  
if %cnt% GEQ 20 (( copy "x:\meinQuellverzeichnis\%1" y:\ordner20ff\*.*) && goto :eof)  
copy "x:\meinQuellverzeichnis\%1" y:\ordner0ff\*.* && goto :eof  

Geht sicherlich auch eleganter und Du kannst natürlich auch die Anzahl der zu kopierenden Dateien als Parameter übergeben und untern im CALL-Block statt [20] berechnen [1*%AnzJeOrdner%], statt [40] berechnen [2*%AnzJeOrdner%]

Über die DIR-Parameter /o:d bzw /o:n kannst Du die Sortierreihenfolge nach Datum, Name oder irgenwas festlegen.

HTH
Biber