Удалить неиспользуемые файлы в каталоге

Модератор: Модераторы разделов

Аватара пользователя
sergius
Сообщения: 782

Удалить неиспользуемые файлы в каталоге

Сообщение sergius »

Есть каталог с файлами.
Там постоянно 1-5 файлов пишутся/читаются.
Остальные 100-200 уже никогда не понадобятся.

Как мне удалить не нужные файлы, оставив используемые? :(

ЗЫ perl или bash
Спасибо сказали:
Аватара пользователя
Asgard
Сообщения: 215
Статус: North Valfader

Re: Удалить неиспользуемые файлы в каталоге

Сообщение Asgard »

в голову приходит только это:
1) если заранее известно какие файлы пишутся/читаются - можно создавать каталоге /tmp файл со списком этих файлов разделённых ньлайнами. далее при удалении каждого файла в текущем каталоге делать поиск по списку используемых файлов.
2) постивить блокировки на запись при открытии нужных файлов. т.о. их нельзя будет удалить. т.е. при выполении команды rm -f ./* останутся только нужные
sator arepo tenet opera rotas ;)
------------------------------------------------------------
LJ
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu

Re: Удалить неиспользуемые файлы в каталоге

Сообщение serzh-z »

sergius писал(а):
19.05.2006 13:34
Как мне удалить не нужные файлы, оставив используемые? :(

tmpwatch, может использовать atime или ctime для контроля "неиспользуемости"
Спасибо сказали:
Аватара пользователя
diesel
Бывший модератор
Сообщения: 5989
ОС: OS X, openSuSE, ROSA, Debian

Re: Удалить неиспользуемые файлы в каталоге

Сообщение diesel »

sergius писал(а):
19.05.2006 13:34
Есть каталог с файлами.
Там постоянно 1-5 файлов пишутся/читаются.
Остальные 100-200 уже никогда не понадобятся.

Как мне удалить не нужные файлы, оставив используемые? :(

ЗЫ perl или bash


find <dir> -atime +7 -exec rm {} \;

удалит файлы к которым не обращались 7 дней и больше.

Также есть:

-mtime n File’s data was last modified n*24 hours ago
-ctime n File’s status was last changed n*24 hours ago.

так же есть amin, mmin, cmin ...

ЗЫ: осторожно с подомными конструкциями - возможно стоит:
find <dir> -atime +7 -ok rm {} \;
чтобы спрашивал на подтверждение удаления каждого файла.
или сделать для начала или сначала сделать
find <dir> -atime +7 -exec echo "m {} \;
чтобы видеть все команды удаления.
Спасибо сказали:
Аватара пользователя
sergius
Сообщения: 782

Re: Удалить неиспользуемые файлы в каталоге

Сообщение sergius »

Ухты так просто. Спасибо. Попробую. ;)
Спасибо сказали:
Аватара пользователя
alv
Бывший модератор
Сообщения: 7275
Статус: Пенсионер в законе
ОС: Cintu

Re: Удалить неиспользуемые файлы в каталоге

Сообщение alv »

поиск по atime - только в том случае, если при монтировании не включено noatime (у меня включено всегда)
надежнее, наверное, find по mtime
по ctime - только если атрибуты не менялись
Спасибо сказали: