Учитывая, что tar
имеет параметр «добавить» ( -r
), вы можете сделать его простым:
for file in *.log; do tar -rf "${file%%_*}.tar" "$file" ; done
Вы не можете включить z
вариант сжатия журналов с помощью этого конкретного подхода ( tar: Невозможно обновить сжатые архивы
), но, черт возьми, это просто.
Разумеется, добавьте устойчивости шаблону подстановки в соответствии с вашими потребностями. В этой версии предполагается, что все файлы .log
должны быть заархивированы в том или ином архиве.
В большинстве инструментов для создания пакетов в Debian содержимое пакета package
становится тем, что находится в debian/package
, когда запускается dpkg-deb
. Вы можете размещать файлы там любым способом, вам не нужно полагаться на dh_install
(, который является инструментом, который обрабатывает .install
файлы ).
Итак,:
override_dh_install:
dh_install
install blah debian/package/wherever
и так далее. Здесь вы можете добавить свою условную обработку файлов.
Однако важно понимать, что спецификация упаковки (, которая не является специфичной для Debian ), должна быть последовательной :, т. е. для данной архитектуры,сборка пакета всегда должна приводить к одному и тому же содержимому пакета. Упаковка необязательного содержимого обычно включает создание проекта таким образом, чтобы были сгенерированы все файлы, а затем их отправка в разные пакеты, не все из которых нужно устанавливать. (Для этого можно пойти на многое, напр. сборка GCC, в которой есть несколько приемов, благодаря которым драйвер компилятора знает обо всех доступных языках, но их не обязательно устанавливать все.)