групповое сжатие файлов!

Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС для молодых и начинающих системных администраторов.

Модераторы: SLEDopit, Модераторы разделов

Alex181
Сообщения: 44
ОС: Linux RH

групповое сжатие файлов!

Сообщение Alex181 »

Всем доброго дня!
Есть куча файлов в имени которых есть дата.
Хочу все фалы за весь месяц сжать в один файл, только не соображу как.

Код: Выделить всё

find -name "200910*.msg" | xargs bzip2
конечно каждый сжимает.
Подскажите, что нужно еще в команду добавить, чтобы получить один архив с именем oct09.bz2
Заранее благодарю!
Спасибо сказали:
Warlornhor
Сообщения: 428
ОС: openSUSE 12.3

Re: групповое сжатие файлов!

Сообщение Warlornhor »

Может так?

Код: Выделить всё

tar -cjvf oct09.tar.bz2 `find -name "200910*.msg"`
Спасибо сказали:
Alex181
Сообщения: 44
ОС: Linux RH

Re: групповое сжатие файлов!

Сообщение Alex181 »

Warlornhor писал(а):
16.11.2009 11:05
Может так?

Код: Выделить всё

tar -cjvf oct09.tar.bz2 `find -name "200910*.msg"`

Спасибо Warlornhor, совсем про команду tar забыл!
Спасибо сказали:
Alex181
Сообщения: 44
ОС: Linux RH

Re: групповое сжатие файлов!

Сообщение Alex181 »

а если получаю

Код: Выделить всё

-bash: /bin/tar: Argument list too long

это можно как то устранить?
Спасибо сказали:
Warlornhor
Сообщения: 428
ОС: openSUSE 12.3

Re: групповое сжатие файлов!

Сообщение Warlornhor »

Alex181 писал(а):
16.11.2009 11:54
а если получаю

Код: Выделить всё

-bash: /bin/tar: Argument list too long

это можно как то устранить?

Скопировал оттуда
http://rackerhacker.com/2007/07/05/bintar-...-list-too-long/

Код: Выделить всё

find . -name '200910*.msg' -print >/tmp/test.manifest
tar -cvjf textfiles.tar.bz2 --files-from /tmp/test.manifest
Спасибо сказали:
Alex181
Сообщения: 44
ОС: Linux RH

Re: групповое сжатие файлов!

Сообщение Alex181 »

Код: Выделить всё

find . -name '*.txt' -print >/tmp/test.manifest

эта команда найдет и создаст файл только с названием файлов. Так, что не поможет в моем случае.
Спасибо сказали:
Warlornhor
Сообщения: 428
ОС: openSUSE 12.3

Re: групповое сжатие файлов!

Сообщение Warlornhor »

Правильно, а следующая команда по идее должна заархивировать все что нашлось.
Спасибо сказали:
Alex181
Сообщения: 44
ОС: Linux RH

Re: групповое сжатие файлов!

Сообщение Alex181 »

Warlornhor писал(а):
16.11.2009 12:36
Правильно, а следующая команда по идее должна заархивировать все что нашлось.

Только если разархивировать, то я получаю файл, в котором только название файлов, которые нашлись.
Спасибо сказали:
Аватара пользователя
Brainsburn
Сообщения: 950
Статус: /
ОС: Gentoo

Re: групповое сжатие файлов!

Сообщение Brainsburn »

Код: Выделить всё

find -name '200910*.msg' > test.manifest

Создаст список файлов

Код: Выделить всё

 tar -cvjf test.tar.bz2 --files-from test.manifest

Создаст архив с файлами из этого списка.
Если что-то не работает, ищите опечатку.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: групповое сжатие файлов!

Сообщение drBatty »

Warlornhor писал(а):
16.11.2009 11:05
Может так?

так оптимально. можно и со списком, а ещё у tar есть опция -r, добавление файлов в архив. только не работает со сжатыми архивами, потому сначала добавьте всё, а потом жмите.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Alex181
Сообщения: 44
ОС: Linux RH

Re: групповое сжатие файлов!

Сообщение Alex181 »

Работает так, правда долго.

Код: Выделить всё

find -name "200910*.msg > tmp.lst
tar -cjf 200910.tar.bz2 -T tmp.lst

Всем откликнувшимся спасибо.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current

Re: групповое сжатие файлов!

Сообщение drBatty »

Alex181 писал(а):
16.11.2009 15:37
Работает так, правда долго.

используйте tar -czf, gzip намного быстрее bzip2, хотя жмёт несколько хуже.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали: