On Thu, Dec 23, 2004 at 10:59:52AM +0300, Dmitry E. Oboukhov wrote: > и вот вопрос: есть какие-нидь методы вычислить какие новые файлы создал > инсталлер кроме дифа на ls -lR ? Вообще есть простой подход на эту тему:
Как мы можем обратить внимание, при создании (изменении числа hardlinks/ owner/group/permissions) значение ctime для файла устанавливается в текущее время (модификация mtime насильно со стороны юзера тоже вызывает такой эффект). Посему у вновь созданных файлов ctime будет свежим. Вполне можно сказать touch flagfile, после чего запустить сначала инсталлятор, а затем find <набор каталогов где искать> -cnewer flagfile > filelist Недостатки у такого простого подхода есть, но это значительно быстрее, чем ls -lR два раза. Дальше можно скопировать данные файлы простым вызовом двух tar через трубку вот так: tar -c --no-recursion -T filelist -O| tar -xpf - Смысл --no-recursion и один из недостатков следующий: Когда мы создаем в каталоге dir подкаталог dir/newdir в newdir создается элемент .., который является жесткой ссылкой на dir, и dir при таком подходе попадает в filelist. Информация к размышлению находится в man 2 stat. WBR Dmitri Ivanov