Untar и gzip от нескольких подкаталогов

Есть утилита, задача , Часть UTIL-Linux, для этой цели. Например:

taskset -c 0-15 script

будет запустить скрипт и ограничить его использовать только процессоры с идентификаторами от 0 до 15.

Чтобы проверить, что ваши скрипты действительно ограничены для запуска по правильному CPU, вы можете посмотреть на файл / proc / / status : он будет иметь Записи по имени CPUS_ALLED (растровое изображение; наименее значимый бит Установите, если CPU 0 разрешен) и CPUS_ALLED_LIST (A Список CPU IDS).

0
27.01.2015, 04:47
2 ответа
sed -e :n -e '$!N;/\n.*\n/!{$!bn
};  s/some text,\n* *something else\n* *another thing/this is completely\
different text/;P;D' <infile

Я боюсь, что вам будет трудно придумать решение, которое подходит вам, пока вы не выскажете конкретное описание проблемы - но именно для этого QA лучше всего подходит, как я вижу. Может быть, это даст вам идею - она всегда будет держать 3 строки в пространстве образца за один раз - с 2 строк вперед - при скольжении вперед по входному файлу только строку за раз.

Она должна соответствовать вашей последовательности, охватывает ли она несколько строк или нет - до трех, то есть. Но никаких положений по зеркальному отражению этого положения в замене нет - она всегда охватывает две строки, как написано.

-121--26156-

Для тех, у кого есть команда, написанная на основании предположения, что выходные данные трубопровода никогда не будут иметь цвет (например, некоторые рамки тестирования), может оказаться полезным использовать утилиту скрипта для первого сохранения выходных данных ansi. Затем это может быть подтолкнуто к ахе или другим упомянутым коммунальным услугам.

-121--7536-

К моменту вызова строки $ f/* .fastq ничего не соответствует. Но основная проблема заключается в том, что tar не извлекается в stdout, он создает файлы (на другом конце канала должен быть какой-то способ сказать «получение», что один файл заканчивается, а другой начинается, и нет, по крайней мере, не с tar ).

Поэтому при использовании tar необходимо разрешить tar создавать файлы, а затем gzip создавать файлы.

Если файлы помещаются в память, вы можете написать быстрый сценарий в Python с помощью модулей tarfile и gzip и никогда не позволять несжатому коду касаться диска. IIRC отдельные файлы полностью извлечены, так что для работы они должны умещаться в памяти.

0
28.01.2020, 04:57

Замените «Some ...\n... Thing» на содержимое файла «new» в одном или нескольких входных файлах

perl -i -p0e 's/Some.*?thing\n/`cat new`/se' input.txt ...
  1. -i , чтобы изменить input.txt непосредственно
  2. -p0 файл входного файла и распечатать его в конце
  3. s/regexp/.../s в regexp . - это . |\n
  4. s/.../exp/e заменить на eval (exp)
  5. новый -- файл, содержащий замещающий текст (Это полностью... другой текст)
  6. , если это полезно, можно расширить исходный текст s/Некоторый текст\n ...\n... thing\n/...
-121--26155-

Предполагая, что у вас есть разрешения (или вы можете убедить SysAdmin), я предлагаю изучить tmux , который является терминальным мультиплексором. Tmux позволяет делать все, о чем вы говорите и многое другое. Вы можете управлять всеми окнами и просто отсоединять сеанс по завершении. Захват, если вы остановились, так же прост, как и повторное подключение к отсоединенному сеансу ( одна из многих направляющих ). Мой текущий сеанс tmux управляет более чем 30 + 'вкладок' прямо сейчас, так что я всегда могу приостановить свою работу в конце дня и быстро забрать снова, где я оставил на следующий день.

Вы даже можете вложить вкладки в те же окна! Пример управления окном:

enter image description here

-121--139730-

Общий подход состоит в том, чтобы считывать имена файлов из архива (если они не всегда одинаковы), а затем tar извлекать только один файл одновременно. GNU tar имеет опцию -to-stdout , которая запрещает запись файла. Без этого потребуется FIFO для каждого имени файла.

> tar -tf subdir.tar.gz
R1.fastq
R1.fastq

tar -xf subdir.tar.gz --to-stdout R1.fastq | gzip -n9 >/path/to/R1.fastq.gz
tar -xf subdir.tar.gz --to-stdout R2.fastq | gzip -n9 >/path/to/R2.fastq.gz
0
28.01.2020, 04:57

Теги

Похожие вопросы