Я создаю архив, используя tar zcf arhive.tar.gz dir/
и это работает нормально. Теперь я хотел разделить это на два простых архива, один только для изображений, другой - для всего остального.
Кажется, нет тривиального и чистого способа сделать это. Для tar
Я могу исключать только файлы, что неразумно для исключения всех расширений, кроме gif, jpg и png.
Чтобы включить, я должен использовать find
либо с -exec
или | xargs
. Это вроде работает, но не работает, если в именах файлов есть пробелы или специальные символы (апострофы, кавычки). Итак, теперь мне нужно передать все имена файлов, скажем, awk
и избежать их вручную?
Что мне не хватает? Почему это так сложно?
Я только хотел tar zcf archive-images.tar.gz dir/ --match-only=*.png
использовать find ... -print0 | xargs -0 tar...
эти две опции существуют для работы с именами файлов с пробелами.