Nur Dateien kleiner als 10MB per Batch kopieren
Hallo,
was für ein Text soll in einer Bat-Datei stehen, damit mehrere Ordner samt deren Dateien von A nach B so kopiert werden, dass nur Dateien kleiner als 10 MB kopiert werden.
Meine PC-Kenntnisse sind leider nur ausreichend. Ihr sollt euch bitte daher möglichst verständlich ausdrücken.
Ich erstelle eine Bat-Datei folgendermaßen: Ich erstelle eine neue Txt-Datei, deren Endung ich in .bat umbenenne.
Ist die Methode richtig?
Vielen Dank im voraus !
was für ein Text soll in einer Bat-Datei stehen, damit mehrere Ordner samt deren Dateien von A nach B so kopiert werden, dass nur Dateien kleiner als 10 MB kopiert werden.
Meine PC-Kenntnisse sind leider nur ausreichend. Ihr sollt euch bitte daher möglichst verständlich ausdrücken.
Ich erstelle eine Bat-Datei folgendermaßen: Ich erstelle eine neue Txt-Datei, deren Endung ich in .bat umbenenne.
Ist die Methode richtig?
Vielen Dank im voraus !
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 72091
Url: https://administrator.de/forum/nur-dateien-kleiner-als-10mb-per-batch-kopieren-72091.html
Ausgedruckt am: 22.05.2025 um 03:05 Uhr
7 Kommentare
Neuester Kommentar
Hallo,
machen wir doch immer. Leider der Fragesteller nicht.
Um eine FQA zu bekommen solltest du dein BS angeben.
für Win2000 und höher läuft das so
Besorge dir ROBOCOPY und
schreibe in deine Batch
cu paulepank
Ihr sollt euch bitte daher möglichst verständlich ausdrücken.
machen wir doch immer. Leider der Fragesteller nicht.
Um eine FQA zu bekommen solltest du dein BS angeben.
für Win2000 und höher läuft das so
Besorge dir ROBOCOPY und
schreibe in deine Batch
robocopy <quellordner> <zielordner> /mir /max:<Größe in Byte> *.*
cu paulepank
Ja die Vorgehensweise stimmt so.
In die Datei schreibst du dann folgendes rein (ungetestet):
Die Größe wird in Byte angegeben. daher bei minsize die rechnung 1024*1024*10 für die 10 MB.
miniversum
In die Datei schreibst du dann folgendes rein (ungetestet):
@echo off
set "quelle=C:\quelle"
set "ziel=C:\ziel"
set /a minsize=1024*1024*10
FOR /F "delims=" %%i in ('dir /B "%quelle%"') do (
if %%~zi gtr %minsize% copy "%quelle%\*.*" "%ziel%"
)
Die Größe wird in Byte angegeben. daher bei minsize die rechnung 1024*1024*10 für die 10 MB.
miniversum
Moin durchsteiger,
willkommen im Forum.
Nur noch Fussnoten zu paulepanks und miniversums Lösungen.
Zu Miniversums Lösung noch anderthalb Variationen, falls auch Dateien in Unterverzeichnissen kopiert werden sollen:
- Jetzt/ Dateien aus Verzeichnis %quelle% nach %ziel% kopieren ohne evtl Dateien aus Unterverzeichnissen
- Erweiterung / Verzeichnis %quelle% nach %ziel% kopieren; Dateien aus Unterverzeichnissen auch; aber alles in Verzeichnis %ziel%
--oder-
Falls tatsächlich Verzeichnisstrukturen/-Bäume zu kopieren sind, dann ist ein eigens dafür gebasteltes Werkzeug wie RoboCopy/XCopy besser geeignet.
Zu deiner Frage "Wie eine Bat-Datei eintippseln?"...
Ja, geht mit dem M$-Standard-Editor wie von dir beschrieben.
(Kleine) Vereinfachungen: Du kannst beim "Speichern" direkt den Dateinamen mit Endung ".bat" eingeben.
Dann allerdings alles in Anführungszeichen (Beispiel: Button {Speichern}-->"test.bat" in Anfü-Zeichen.
-oder-
Du kannst natürlich direkt eine neue *.Bat erzeugen mit Eingabe vom notepad d:\batch\test.bat am CMD-Prompt.
-oder-
falls Du öfters als zweimal im Jahr Skripte bearbeiten willst:
Lade Dir einen der meist genannten Free-/Shareware-Editoren herunter (TextPad, UltraEdit..).
Grüße
Biber
willkommen im Forum.
Nur noch Fussnoten zu paulepanks und miniversums Lösungen.
Zu Miniversums Lösung noch anderthalb Variationen, falls auch Dateien in Unterverzeichnissen kopiert werden sollen:
- Jetzt/ Dateien aus Verzeichnis %quelle% nach %ziel% kopieren ohne evtl Dateien aus Unterverzeichnissen
@echo off & Setlocal
set "quelle=C:\quelle"
set "ziel=C:\ziel"
set /a minsize=1024*1024*10
FOR /F "delims=" %%i in ('dir /B "%quelle%"') do (
if %%~zi gtr %minsize% copy "%quelle%\%%~nxi" "%ziel%\"
)
- Erweiterung / Verzeichnis %quelle% nach %ziel% kopieren; Dateien aus Unterverzeichnissen auch; aber alles in Verzeichnis %ziel%
@echo off & Setlocal
set "quelle=C:\quelle"
set "ziel=C:\ziel"
set /a minsize=1024*1024*10
FOR /F "delims=" %%i in ('dir /B /s "%quelle%"') do (
if %%~zi gtr %minsize% copy "%%~fi" "%ziel%\"
)
@echo off & Setlocal
set "quelle=C:\quelle"
set "ziel=C:\ziel"
set /a minsize=1024*1024*10
FOR /R "%quelle%" %%i in (*) do (
if %%~zi gtr %minsize% copy "%%~fi" "%ziel%\"
)
Falls tatsächlich Verzeichnisstrukturen/-Bäume zu kopieren sind, dann ist ein eigens dafür gebasteltes Werkzeug wie RoboCopy/XCopy besser geeignet.
Zu deiner Frage "Wie eine Bat-Datei eintippseln?"...
Ja, geht mit dem M$-Standard-Editor wie von dir beschrieben.
(Kleine) Vereinfachungen: Du kannst beim "Speichern" direkt den Dateinamen mit Endung ".bat" eingeben.
Dann allerdings alles in Anführungszeichen (Beispiel: Button {Speichern}-->"test.bat" in Anfü-Zeichen.
-oder-
Du kannst natürlich direkt eine neue *.Bat erzeugen mit Eingabe vom notepad d:\batch\test.bat am CMD-Prompt.
-oder-
falls Du öfters als zweimal im Jahr Skripte bearbeiten willst:
Lade Dir einen der meist genannten Free-/Shareware-Editoren herunter (TextPad, UltraEdit..).
Grüße
Biber
Moin durchsteiger,
das *.* sind so genannte Wildcards/Jokerzeichen.
In diesem Fall steht "*.*" für Dateien mit "Name ist beliebig" und "Dateiendung ist beliebig".
Etwas vollständigere Informationen bekommst Du,wenn Du am CMD-Prompt die jeweiligen Hilfe-Infos zu den oben verwendeten Befehlen abrufst.
Also "Dir /?" , "For /?" , "copy /?" oder auch "Robocopy /?".
Da die eigentliche Frage jetzt beantwortet zu sein scheint, setze ich den Beitrag mal auf "Gelöst" und "Geschlossen".
Grüße
Biber
das *.* sind so genannte Wildcards/Jokerzeichen.
In diesem Fall steht "*.*" für Dateien mit "Name ist beliebig" und "Dateiendung ist beliebig".
Etwas vollständigere Informationen bekommst Du,wenn Du am CMD-Prompt die jeweiligen Hilfe-Infos zu den oben verwendeten Befehlen abrufst.
Also "Dir /?" , "For /?" , "copy /?" oder auch "Robocopy /?".
Da die eigentliche Frage jetzt beantwortet zu sein scheint, setze ich den Beitrag mal auf "Gelöst" und "Geschlossen".
Grüße
Biber