Пакетная распаковка зашифрованных rar-файлов с помощью unar

Пакетная распаковка зашифрованных rar-файлов с помощью unar

Я использую macOS и я скачалунардля распаковки зашифрованных файлов rar. Это работает нормально для отдельных файлов, но я не могу заставить это работать с подстановочным знаком для нескольких файлов.

У меня есть список файлов rar с именами от 01 до 10 и исполняемый файл unar в текущей папке.

myArchive01.rar
myArchive02.rar
..
myArchive10.rar

Это отлично работает для одного файла:

$ ./unar -p myPassword myArchive01.rar
myArchive01.rar: RAR
  myText.txt  (1000 B)... OK.
Successfully extracted to "./myText.txt".

Но у меня не получается это сделать с кучей файлов:

$ ./unar -p myPassword myArchive*.rar
myArchive01.rar: RAR
No files extracted.

Конечно, я мог бы использовать встроенные пакетные функции в macOS, но мне хотелось бы узнать, как Unar делает это самостоятельно.

$ for i in {1..10}; do ./unar -p myPassword myArchive${i}.rar; done

Кто-нибудь может помочь?

решение1

Похоже, что подстановочные знаки действительно не принимаются, только список файлов.

Вы можете использовать команду find -exec для запуска команды unar для каждого найденного файла:

find . -name "*.rar" -exec unar {} \;

решение2

Вы можете использовать find и exec для последовательного извлечения файлов.

Например, find ./ -name myArchive* -exec unar -p myPassword {} \;


При этом используется find для поиска всех файлов, соответствующих шаблону имени, а затем выполняется команда после exec для каждого найденного результата.

Связанный контент