Per Batch bestimmte Anzahl an Dateien zippen
Guten Abend liebe Community,
ich habe folgende Frage:
Ich habe in einem Ordner ca. 850 Dateien.
Und ich wollte gerne immer nur jeweils 100 Dateien zippen und dann als 1.zip im selben Ordner speichern.
Und dann die nächsten 100 Dateien als 2.zip speichern, bis am Ende alle Dateien gezippt sind.
So daß am Ende es 9 Zip Dateien sind.
Die Original Dateien sollten bitte trotzdem im Ordner bleiben
Ich habe Windows 10 und habe auch 7-Zip Installiert.
Ich bin über jede Batch oder Powershell Hilfe dankbar.
Auch über jeden Link hier im Forum wo diese Frage/Antwort schon zu finden ist.
Vielen Dank.
Gruß
Thomas
ich habe folgende Frage:
Ich habe in einem Ordner ca. 850 Dateien.
Und ich wollte gerne immer nur jeweils 100 Dateien zippen und dann als 1.zip im selben Ordner speichern.
Und dann die nächsten 100 Dateien als 2.zip speichern, bis am Ende alle Dateien gezippt sind.
So daß am Ende es 9 Zip Dateien sind.
Die Original Dateien sollten bitte trotzdem im Ordner bleiben
Ich habe Windows 10 und habe auch 7-Zip Installiert.
Ich bin über jede Batch oder Powershell Hilfe dankbar.
Auch über jeden Link hier im Forum wo diese Frage/Antwort schon zu finden ist.
Vielen Dank.
Gruß
Thomas
Please also mark the comments that contributed to the solution of the article
Content-Key: 2733359189
Url: https://administrator.de/contentid/2733359189
Printed on: April 26, 2024 at 03:04 o'clock
3 Comments
Latest comment
Servus.
Powershell:
Grüße Uwe
Powershell:
# max size of each set
$max = 100
# folder with files
$folder = 'E:\Dateien'
# get all files of folder (since we only need the path of all files, this variant is way faster then Get-ChildItem)
$files = [IO.Directory]::GetFiles($folder)
# initialize counters
$done = 0;$cnt = 1
# loop until all files are zipped
while($done -lt $files.count){
# zip set of $max number of files
$files | select -skip $done -First $max | compress-archive -Destinationpath "$folder\$('{0:D2}' -f $cnt).zip"
$cnt++; $done += $max
}