Ich verwende macOS und habe heruntergeladenunarum verschlüsselte RAR-Dateien zu dekomprimieren. Bei einzelnen Dateien funktioniert es einwandfrei, aber ich kann es nicht mit einem Platzhalter für mehrere Dateien zum Laufen bringen.
Ich habe eine Liste von RAR-Dateien mit Dateinamen von 01...10 und die ausführbare Unar-Datei im aktuellen Ordner.
myArchive01.rar
myArchive02.rar
..
myArchive10.rar
Es funktioniert hervorragend für eine einzelne Datei:
$ ./unar -p myPassword myArchive01.rar
myArchive01.rar: RAR
myText.txt (1000 B)... OK.
Successfully extracted to "./myText.txt".
Aber ich bekomme es bei einer Menge Dateien nicht zum Laufen:
$ ./unar -p myPassword myArchive*.rar
myArchive01.rar: RAR
No files extracted.
Ich könnte natürlich die integrierten Batch-Funktionen in macOS verwenden, aber ich wollte wissen, wie unar dies alleine macht
$ for i in {1..10}; do ./unar -p myPassword myArchive${i}.rar; done
Kann jemand helfen?
Antwort1
Es scheint tatsächlich keine Platzhalter zu akzeptieren, sondern nur eine Liste von Dateien.
Sie können den Befehl find -exec verwenden, um den Befehl unar für jede gefundene Datei auszuführen:
find . -name "*.rar" -exec unar {} \;
Antwort2
Sie können „find“ und „exec“ verwenden, um die Dateien nacheinander zu extrahieren.
Z. B. find ./ -name meinArchiv* -exec unar -p meinPasswort {} \;
Dabei wird mit „find“ nach allen Dateien gesucht, die dem Namensmuster entsprechen, und anschließend der Befehl nach „exec“ für jedes gefundene Ergebnis ausgeführt.