Я использую следующую командную строку:

find . -mtime -15 -mtime 0  -print0 | xargs -0  tar cjvf /home/user/adjuntos.tar.bz2

Левая сторона канала работает как шарм, но правая часть канала захватывает все файлы из каталога.

Я не знаю, что я делаю не так. Не могли бы вы мне помочь?

2 ответа2

2

Ваша команда find вероятно, перечисляет . а также (mtime из . , возможно, совпадает с последним измененным файлом), что вызывает включение текущей директории в tar.

Если вы хотите включить только обычные файлы, а не каталоги, вы можете использовать -type f с find .

0

В добавление к -type -type f , нет необходимости в xargs , работает простой -exec:

find . -mtime -15 -mtime 0  -exec tar cjvf /home/user/adjuntos.tar.bz2 {} +

({} + означает "все соответствующие файлы вместе")

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .