Экран Use. Заключить в кавычки из страницы справочника:
C-a H (log) Begins/ends logging of the current window to
the file "screenlog.n".
pbzip2 работает неплохо. Как и в случае с ответом выше, tar к stdout и pipe к pbzip2:
$ tar -cf - mydir/ | pbzip2 > mydir.tar.bz2
pbzip2 допускает несколько вариантов, позволяющих регулировать количество процессоров, объем используемой памяти, уровень сжатия и т.д.
Или для одного архива на каталог (не предполагает пробелов или специальных символов в именах каталогов):
for dir in * ; do
[[ ! -d ${dir} ]] && continue
tar cf - ${dir} | bzip2 > ${dir}.tar.bz2 &
done
С GNU Parallel это выглядит так:
parallel tar jcvf /tmp/{= s:/$:: =}.tar.bz2 {} ::: */
или:
parallel tar jcvf /tmp/{}.tar.bz2 {} ::: *
Для лучшего сжатия попробуйте:
parallel tar -I pxz -cvf /tmp/{= s:/$:: =}.tar.xz {} ::: */
Просто отправьте tar
в stdout
и направьте его на pigz
. (Скорее всего, вы не хотите распараллеливать доступ к диску, только часть сжатия.):
$ tar c- myDirectory/ | pigz > myDirectory.tar.gz
Простой вызов tar
, подобный приведенному выше, в основном только объединяет деревья каталогов обратимым образом. Компрессионная часть может быть отдельной, как в этом примере.
pigz
выполняет многопоточное сжатие. Количество используемых потоков можно настроить с помощью -p
, и по умолчанию будет установлено количество доступных ядер.