Параллельно читать содержимое заархивированного файла без извлечения

У меня есть следующая структура архива zip:

$ unzip -l Undetermined_S0_L004_R1_001_fastqc.zip Archive: Undetermined_S0_L004_R1_001_fastqc.zip Length Date Time Name -------- ---- ---- ---- 0 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/ 0 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/Icons/ 0 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/Images/ 1197 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/Icons/fastqc_icon.png 1450 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/Icons/warning.png 1561 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/Icons/error.png 1715 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/Icons/tick.png 782 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/summary.txt 9095 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/Images/per_base_quality.png 14381 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/Images/per_tile_quality.png 23205 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/Images/per_sequence_quality.png 30978 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/Images/per_base_sequence_content.png 31152 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/Images/per_sequence_gc_content.png 7861 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/Images/per_base_n_content.png 18356 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/Images/sequence_length_distribution.png 23040 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/Images/duplication_levels.png 9096 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/Images/adapter_content.png 58683 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/Images/kmer_profiles.png 355919 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/fastqc_report.html 301092 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/fastqc_data.txt 10117 10-10-14 14:44 Undetermined_S0_L004_R1_001_fastqc/fastqc.fo -------- ------- 899680 21 files 

Как можно использовать fastqc_data.txt с crimson параллелью, потому что на данный момент я получаю следующую ошибку:

 find `pwd`/*_fastqc.zip -type f | parallel -j 3 unzip -c {} {}/fastqc_data.txt | crimson fastqc {} | less Usage: crimson fastqc [OPTIONS] INPUT [OUTPUT] Error: Invalid value for "input": Path "{}" does not exist. 

One Solution collect form web for “Параллельно читать содержимое заархивированного файла без извлечения”

У вас есть трубопровод из четырех команд:

  • find , в котором перечислены zip-файлы.
  • parallel , который вызывает unzip для извлечения одного файла в каждом zip-файле. Учитывая, что {} заменен на путь к zip-файлу, вы home/user977828/stuff/Undetermined_S0_L004_R1_001_fastqc.zip/fastqc_data.txt из архива файлы, например home/user977828/stuff/Undetermined_S0_L004_R1_001_fastqc.zip/fastqc_data.txt (если текущий каталог – /home/user977828/stuff ).
  • crimson , который получает беспорядок извлеченных файлов на стандартном вводе и вызывается с аргументами fastqc и {} ,
  • less .

parallel заменяет {} в своих аргументах. Он не может ничего сделать с другими частями вашего трубопровода. Если вы хотите вызывать crimson на каждом файле fastqc_data.txt отдельно, вам нужно передать конвейер от unzip до crimson в качестве аргумента для parallel .

 find *_fastqc.zip -type f | sed 's/\.zip$//' | parallel -j 3 'unzip -c {}.zip {}/fastqc_data.txt | crimson fastqc /dev/stdin' | less 
  • Список файлов из вложенного zip-файла без лишних
  • Подкаталоги Zip на основе find, -exec
  • Как сделать zip / unzip в командной строке unix?
  • Понимание среды Linux Back-Slash и звездочки
  • Как разбить несколько разделенных файлов в разных подпапках
  • Использование zip-пакета для debian с паролем
  • Crack zip-файл с известными частями паролей
  • Распаковка pkgsrc нарушена?
  • Почему `zip` в цикле for работает, когда файл существует, но не тогда, когда он этого не делает?
  • Как я могу переупаковать zip в 7zip?
  • офисные файлы читаются в виде zip-архива и наоборот. Как я могу решить это?
  • Interesting Posts

    Awk – строка печати, если номер находится между столбцом 1 и столбцом 2

    сценарий оболочки для получения размера пикселя изображения

    Как удалить старые файлы в папке в unix?

    Как выбрать диапазон файлов с помощью частичного имени

    Проверьте, равна ли переменная открытой круглой скобке

    Можно ли добавить функцию внутри функции?

    Считать количество строк в нескольких файлах

    Найти количество IO, возникающее на разных NFS-креплениях

    Являются ли пакеты криптографически подписанными в Fedora 14?

    Направление звука для конкретных приложений

    Исполняемый файл, находящийся в местоположении A, как запустить его в местоположении B?

    Мониторинг и подключение API

    Как заставить Java работать с хромом или firefox

    Как конвертировать, изменять размер и центрировать изображение с помощью ImageMagick

    Почему Centos apache httpd-2.2.3 rpm удаляет подключенный apr, apr-util, pcre?

    Linux и Unix - лучшая ОС в мире.