| ПН | ВТ | СР | ЧТ | ПТ | СБ | ВС |
|---|---|---|---|---|---|---|
| -2 | -1 | 0 | 1 | 2 | 3 | 4 |
| 5 | 6 | 7 | 8 | 9 | 10 | 11 |
| 12 | 13 | 14 | 15 | 16 | 17 | 18 |
| 19 | 20 | 21 | 22 | 23 | 24 | 25 |
| 26 | 27 | 28 | 29 | 30 | 31 | 1 |
Домашний каталог имеет обыкновение наполняться всяким мусором, который
занимает место, раздражает администраторов (особенно при ограниченном
дисковом пространстве системы), и прочее. Как хотя бы немного
автоматизировать процесс очистки? Ну, например, удалять старые объектные
файлы и автоматически создаваемые резервные копии вида *~?
Ну да, конечно, есть утилита find, но как ей пользоваться? Оказывается, легко!
На удаленной высокопроизводительной системе, с которой я работаю, в конце файла .profile я прописал следующее:
if [ `who | egrep '\<pozdneev\>' | wc -l` -eq 1 ] ; then
echo 'Searching for old files...'
find ~ \
\( -type f -name '*.o' -atime +7 -delete \) , \
\( -type f -name '*~' -atime +7 -delete \)
find ~/work \
\( -type f -empty -atime +7 -delete \) , \
\( -type f -perm /111 -perm -200 -atime +31 -size +2M -delete \)
fi
В первой строчке я проверяю, кто в данный момент находится в системе (who). Потом ищу сессии, открытые мной (egrep '\<pozdneev\>'), считаю их количество (wc -l), и, если это моя единственная (первая) сессия, то я запускаю процедуру поиска и удаления.
Первая find ищет по всему домашнему каталогу и удаляет (-delete) файлы (-type f) *.o и *~, последнее обращение к которым было более семи дней назад (-atime +7).
Вторая find просматривает только директорию ~/work в поисках пустых (-empty) файлов и исполняемых файлов (-perm /111) размером более двух мегабайт (-size +2M), к которым владелец (т.е. я) имеет доступ на запись (-perm -200).
Удобно, что с помощью скобок (\( \) , \( \)) можно группировать разные запросы; понятно, что при этом дерево директорий просматривается только один раз.
Когда файлов у меня в каталоге станет побольше, то в конец команд добавлю амперсанд (&), чтобы все это в фоне запускалось.
Да, удаленная система — это, конечно, наш факультетский Blue Gene/P.
А еще мне вдруг захотелось посмотреть, что же из себя представляет
штука,
о которой много доводилось слышать.
Последние комментарии
1 день 19 часов назад
5 дней 14 часов назад
6 дней 16 часов назад
1 неделя 13 часов назад
1 неделя 5 дней назад
2 недели 10 часов назад
3 недели 1 день назад
3 недели 1 день назад
3 недели 1 день назад
5 недель 2 дня назад