Как разархивировать файлы рекурсивно в Linux / DOS

У меня есть zip-папка, которая содержит в себе тысячи zip-папок, и она идет по иерархии, я должен разархивировать каждый файл и поместить его в одну папку.

Эта задача не зависит от платформы в Linux или Windows.

Ваша помощь будет высоко оценена. Спасибо.

1 ответ

Я попробовал это быстро и грязно, и это сработало для меня. Создать скрипт:

#!/bin/bash
function rec_unzip {
unzip $1 && rm $1
for i in $(find . -name "*.zip"); do
    if [ -f $i ]
    then
         rec_unzip $i
    fi
done
}
rec_unzip $1

выполнить скрипт с ./script_name.sh first_zip_file.zip,

Вы можете изменить его, чтобы предоставить целевые каталоги для распаковки.

Другие вопросы по тегам