Einzelne Dateien per Batch mit 7z packen
Hallo zusammen!
Ich möchte eine Batch erstellen, welche im "Senden an"-Menü verknüpft ist. Alle an diese Batch gesendeten Dateien sollen dann je einzeln in ein 7z-Archiv gepackt werden.
Bisher habe ich folgende Zeile erstellt:
Leider gibt es hier ein Problem: Wenn ich mehrere Dateien markiere und auf die Datei ziehe, werden immer alle Dateien aus dem Ursprungsordner in ein Archiv gepackt.
Beispiel: Ich habe zum Test folgenden Ordner erstellt:
Wenn ich nun die drei PDF-Dateien markiere und auf die Batch ziehe läuft folgendes ab:
Das Ergebnis sieht danach wie folgt aus:
Wie muss ich das Script anpassen, damit jede Datei einzeln in ein Archiv gepackt wird?
Gruß
tegwert
Ich möchte eine Batch erstellen, welche im "Senden an"-Menü verknüpft ist. Alle an diese Batch gesendeten Dateien sollen dann je einzeln in ein 7z-Archiv gepackt werden.
Bisher habe ich folgende Zeile erstellt:
@FOR %%i IN (%*) DO "C:\Program Files\7-Zip\7z.exe" a -m0=lzma2 %%i.7z
pause
Beispiel: Ich habe zum Test folgenden Ordner erstellt:
Wenn ich nun die drei PDF-Dateien markiere und auf die Batch ziehe läuft folgendes ab:
Das Ergebnis sieht danach wie folgt aus:
Wie muss ich das Script anpassen, damit jede Datei einzeln in ein Archiv gepackt wird?
Gruß
tegwert
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 166685
Url: https://administrator.de/contentid/166685
Ausgedruckt am: 22.11.2024 um 16:11 Uhr
5 Kommentare
Neuester Kommentar
Aloha,
hm, es müsste doch eigentlich reichen, wenn du
einsetzt oder eventuell sogar per
greetz André
hm, es müsste doch eigentlich reichen, wenn du
@FOR %%i IN (%*) DO call :Ablauf "%%i"
pause
goto :eof
:Ablauf
"C:\Program Files\7-Zip\7z.exe" a -m0=lzma2 "%~1.7z"
goto :eof
:loop
if "%~1"=="" goto :eof
"C:\Program Files\7-Zip\7z.exe" a -m0=lzma2 "%~1.7z"
shift
goto :loop
greetz André