Как я могу скопировать, рекурсивный каталог, только файлы с атрибутом 1 и сбросить этот атрибут на 0?

Как я могу скопировать, рекурсивный каталог, только файлы с атрибутом 1, и сбросить этот атрибут на 0? Спасибо, Франциско

0
задан 5 June 2012 в 23:22

1 ответ

Вам, вероятно, придется установить пакет attr, если вы хотите установить и получить расширенные атрибуты.

Вы можете написать скрипт на языке оболочки или языке более высокого уровня, чтобы спускаться по каталогам и проверять каждый файл, копируя те, которые соответствуют вашим критериям. Я бы лично использовал python.

Используя команду getfattr, вы можете получить значение для пользователя. name вы определяете себя как расширенный атрибут. После копирования файла вы можете установить другое значение, выполнив команду setfattr.

Я не вижу возможности для rsync или dump делать это. Говорят, что дамп игнорирует файлы с набором атрибутов d (не расширенный). Эти регулярные атрибуты устанавливаются с помощью chattr, а атрибуты рассматриваются с помощью lsattr. Эти команды также включают установку версии для файла, в случае, если она может использоваться вместо установки / сброса битов, о которых вы спрашиваете. Я полагаю, вы можете изменить версию от 0 до 1, если хотите. См. man chattr и man lsattr и, в частности, параметр -v.

Кажется, что устаревшая команда dump использует собственный файл (/ var / lib / dumpdates) для отслеживания того, что было заархивировано, когда оно может создавать резервные копии постепенно, что может быть тем, что вы приближаются.

Может быть полезно узнать больше о том, чего вы пытаетесь достичь, если есть другой подход, не связанный с программированием.

0
ответ дан 5 June 2012 в 23:22

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

Похожие вопросы: