Как лучше всего архивировать выбранные расширения файлов в неизвестном дереве. Я не могу использовать параметры исключения в tar / gzip / rsync, так как было бы невозможно исключить все возможные варианты расширения.
Пример резервного копирования всех файлов .foo и .bar в рекурсивном дереве, но не файлов других неизвестных типов.
Я предполагаю, что это должна быть комбинация ls / find, grep и tar / gzip.
Спасибо
Очень похоже на ответ Дмурати, но без xargs.
find /path/to/tree \( -name "*.foo" -o -name "*.bar" \) -print0 | tar -T /dev/stdin --null -cvzf foobar.tar.gz
Попробуйте что-то вроде этого:
find /path/to/tree \( -name "*.foo" -o -name "*.bar" \) -print0 | xargs -r0 tar cvzf foobar.tar.gz
Вы создаете список файлов с помощью команды find, а затем передаете его в xargs, а затем в tar.