1

Я на MacOS, и я скачал Unar, чтобы распаковать зашифрованные 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

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

2 ответа2

0

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

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


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

0

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

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

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .