Mein Vorschlag wäre, so etwas wie ein benutzerdefiniertes Skript zu verwenden, das Ihnen auch eine gute Flexibilität gibt.
Da Sie Windows verwenden, entwickeln ich schnell einen einfachen Powershell - Skript für Sie, die selbst nicht WinRAR erfordern .
Erstellen Sie eine .ps1- Textdatei (z. B. Create-MultiZip.ps1 ) mit folgendem Inhalt:
param ( # The input folder containing the files to zip [Parameter(Mandatory = $true)] [string] $InputFolder, # The output folder that will contain the zip files [Parameter(Mandatory = $true)] [string] $OutputFolder ) Set-Variable SET_SIZE -option Constant -value 10 $i = 0 $zipSet = 0 Get-ChildItem $InputFolder | ForEach-Object { $zipSetName = "archive" + ($zipSet + 1) + ".zip" Compress-Archive -Path $_.FullName -Update -DestinationPath "$OutputFolder\$zipSetName" $i++; if ($i -eq $SET_SIZE) { $i = 0; $zipSet++; } }
Führen Sie es dann in einer PowerShell-Umgebung aus und geben Sie den Ordner an, der die zu zipierenden Dateien enthält, gefolgt von dem Ordner, der die ZIP-Dateien enthält. Zum Beispiel:
Create-MultiZip.ps1 C:\tmp\input C:\tmp\output
Was macht das Skript?
Grundsätzlich wird eine Liste aller Dateien im Eingabeordner abgerufen. Anschließend wird jede Datei der Datei archive1.zip im Ausgabeordner hinzugefügt, bis die vorgegebene Satzgröße erreicht ist. An diesem Punkt wird eine neue Datei " archive2.zip " erstellt (genauso wie zuvor ... usw.), bis alle eingegebenen Dateien verarbeitet wurden.
Beachten Sie, dass die resultierenden Dateien aufgerufen werden archive<n>.zip
, wobei n
die progressive Nummer für jede ZIP-Datei steht.
Das Herzstück des Skripts ist das Cmdlet . Es wurde kürzlich mit PowerShell 5.0 eingeführt, das standardmäßig in Windows 10 enthalten ist.Compress-Archive
Wenn Sie Powershell ein bisschen kennen, kann das Skript leicht verbessert werden, indem Sie zum Beispiel eine CompressionLevel
oder eine Textausgabe zur Konsole hinzufügen .
Es ist auch einfach, die Anzahl der gewünschten Dateien in jedem Satz zu ändern. Sie müssen lediglich den konstanten Wert in der folgenden Zeile ändern:
Set-Variable SET_SIZE -option Constant -value 10
Ich habe das Skript kurz getestet und es funktioniert gut - es ist selbstverständlich, dass Sie einige Testdateien zuerst ausprobieren sollten.