URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 8803
[ Назад ]

Исходное сообщение
"Скрипт: удаление файлов по маске"

Отправлено Ceo , 13-Июл-10 14:32 
Всем доброго времени суток.

Пожалуйста, подскажите скрипт, который будет удалять файлы по маске. Например имя файла GTB*{Date}.gz где Date < Sysdate. В Shell ни бум-бум а очень надо.

Заранее всем огромное спасибо за помощь!


Содержание

Сообщения в этом обсуждении
"Скрипт: удаление файлов по маске"
Отправлено Zl0 , 13-Июл-10 18:16 
>Всем доброго времени суток.
>
>Пожалуйста, подскажите скрипт, который будет удалять файлы по маске. Например имя файла
>GTB*{Date}.gz где Date < Sysdate. В Shell ни бум-бум а очень
>надо.
>
>Заранее всем огромное спасибо за помощь!

Скрипт не нужен, все делается коммандой find


"Скрипт: удаление файлов по маске"
Отправлено Bosh , 13-Июл-10 19:50 
cd /path_to
find . -regex -name "GTB*{Date}.gz" -print -exec rm -rf {} \;

>Всем доброго времени суток.
>
>Пожалуйста, подскажите скрипт, который будет удалять файлы по маске. Например имя файла
>GTB*{Date}.gz где Date < Sysdate. В Shell ни бум-бум а очень
>надо.
>
>Заранее всем огромное спасибо за помощь!


"Скрипт: удаление файлов по маске"
Отправлено Ceo , 14-Июл-10 19:07 
>[оверквотинг удален]
>
>
>
>>Всем доброго времени суток.
>>
>>Пожалуйста, подскажите скрипт, который будет удалять файлы по маске. Например имя файла
>>GTB*{Date}.gz где Date < Sysdate. В Shell ни бум-бум а очень
>>надо.
>>
>>Заранее всем огромное спасибо за помощь!

А где-же условие , если дата неизвестна? в том-то и дело,что нужна именно маска, а не один файл)


"Скрипт: удаление файлов по маске"
Отправлено Andrey Mitrofanov , 14-Июл-10 19:11 
>cd /path_to
>find . -regex -name "GTB*{Date}.gz" -print -exec rm -rf {} \;

find /path_to -name "GTB*.gz" -mtime -1 -delete

Ума не приложу, кто такой Sysdate?---


"Скрипт: удаление файлов по маске"
Отправлено Ceo , 16-Июл-10 17:11 
>>cd /path_to
>>find . -regex -name "GTB*{Date}.gz" -print -exec rm -rf {} \;
>
>find /path_to -name "GTB*.gz" -mtime -1 -delete
>
>Ума не приложу, кто такой Sysdate?---

Sysdate = системная дата = время в настоящий момент. сори, оракловый синтаксис, ошибочно предположил,что он будет понятен. но это не важно, там может быть любая дата, сисдэйт я просто привел в пример.Файл в совсем имени имеет дату,куча файлов с разными датами. еще есть контрольная дата. Надо составить маску, такую, чтобы удалить все файлы, с датой меньше чем контрольная дата.

Спасибо друзья за помощь)


"Скрипт: удаление файлов по маске"
Отправлено djaarf , 20-Июл-10 09:40 
Вы можете удалять архивы по дате модификации + частично по имени, тут вам надо читать man find
или если вы хотите иметь последние n-дневных архивов (насколько я понимаю задача именно такая), то как вариант можете в крон повесить ежедневное задание вида
rm /path/blablaba-`date +%формат вашей даты --date="n days ago"`, оговорюсь, такое я вам предлагаю - если правильно понимаю что вам нгужно делать



"Скрипт: удаление файлов по маске"
Отправлено SuN , 19-Авг-10 17:12 
>[оверквотинг удален]
>>Ума не приложу, кто такой Sysdate?---
>
>Sysdate = системная дата = время в настоящий момент. сори, оракловый синтаксис,
>ошибочно предположил,что он будет понятен. но это не важно, там может
>быть любая дата, сисдэйт я просто привел в пример.Файл в совсем
>имени имеет дату,куча файлов с разными датами. еще есть контрольная дата.
>Надо составить маску, такую, чтобы удалить все файлы, с датой меньше
>чем контрольная дата.
>
>Спасибо друзья за помощь)

А можно узнать названия хотябы пары файлов?
и на какой системе это всё надо сделать.