Linux - Разделение резервной копии на два этапа

Я создаю тарбол с помощью tar zcf arhive.tar.gz dir/ и это работает нормально. Теперь я хотел разделить это на два простых архива, один только для изображений, другой - для всего остального.

Кажется, что нет простого и тривиального способа сделать это. За tar Я могу исключать только файлы, что необоснованно исключать все расширения, кроме gif, jpg и png.

Чтобы включить, я должен использовать find либо с -exec или же | xargs, Это работает, но прерывается, если в именах файлов есть пробелы или специальные символы (апострофы, кавычки). Так что теперь я должен передать все имена файлов, скажем, awk и избежать их вручную?

Что мне не хватает? Почему это так сложно?

Я только хотел tar zcf archive-images.tar.gz dir/ --match-only=*.png

1 ответ

Решение

Использование find ... -print0 | xargs -0 tar... эти две опции существуют для того, чтобы иметь дело с именами файлов с пробелами.

Другие вопросы по тегам