Извлечение разделенных файлов .tar в Linux, которые необходимо отдельно расшифровать

Я пытаюсь извлечь и расшифровать 23 файла .tar с именами, указанными ниже:

dev_flash_000.tar.aa.2010_07_29_170013

Их 23, и каждый из них необходимо расшифровать с помощью приложения под названием dePKG, прежде чем он будет извлечен.

Я попробовал этот скрипт bash:

for i in `ls dev_flash*`; do ./depkg $i $i.tar ; tar -xvf ./$i.tar ; rm $i.tar; done

и получить эту ошибку для всех 23 файлов:

читать 0x800 байт pkg
pkg data @ 340 размером 3ec
не увеличивать, записывать 1004 байта
tar: это не похоже на tar-архив
tar: переход к следующему заголовку
tar : Выход со статусом сбоя из-за предыдущих ошибок

Я просто хочу сэкономить время :D


person sg86-    schedule 06.01.2011    source источник
comment
Вы можете расшифровать и извлечь вручную?   -  person Tanj    schedule 06.01.2011


Ответы (1)


Вы не должны использовать ls в контексте ` ` — см. http://porkmail.org/era/unix/award.html#ls . ВНЕШНЯЯ ПОМОЩЬ:

for i in dev_flash*`; do
    ./depkg "$i" -;
done | tar -xv;

Обратитесь к своим справочным страницам depkg, чтобы узнать, как сделать вывод на стандартный вывод, или, если это не так, используйте /dev/stdout в качестве файла. Это не только сэкономит вам временные файлы, но и запуск одной команды tar для объединения расшифрованного содержимого также работает правильно, когда исходный архив был разделен в произвольных позициях.

person user562374    schedule 06.01.2011