удаление файлов (кроме одного), созданных в прошлом месяце

Программирование на sh, быть может немного про альтернативные языки
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
time12345
сержант
Сообщения: 224
Зарегистрирован: 2011-09-21 1:23:43

удаление файлов (кроме одного), созданных в прошлом месяце

Непрочитанное сообщение time12345 » 2014-12-16 20:27:47

Всем привет. Есть идеи насчет решения такой задачи?

В каталоге есть архивы .tar.bz2 в названии присутствует строка ДД_ММ_ГОДД (${date})
так вот, нужно за прошлый месяц удалить все архивы, кроме одного (можно рандомно, а можно, например, только первый оставить). те, кто часто на sh кодят с этой задачкой должны легко справиться :smile:

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

FiL
ст. лейтенант
Сообщения: 1374
Зарегистрирован: 2010-02-05 0:21:40

Re: удаление файлов (кроме одного), созданных в прошлом меся

Непрочитанное сообщение FiL » 2014-12-16 20:44:09

Код: Выделить всё

MONTH=`date -d "1 month ago" +"%m_%Y"`
ls -1 *$MONTH*.tar.bz2 | tail -n +2 |xargs rm -f
По необходимости обработать напильником :)

time12345
сержант
Сообщения: 224
Зарегистрирован: 2011-09-21 1:23:43

Re: удаление файлов (кроме одного), созданных в прошлом меся

Непрочитанное сообщение time12345 » 2014-12-18 22:04:21

ого, даже короче чем я думал... только вот не совсем понятно насчет этого

Код: Выделить всё

date -d "1 month ago" +"%m_%Y"`


time12345
сержант
Сообщения: 224
Зарегистрирован: 2011-09-21 1:23:43

Re: удаление файлов (кроме одного), созданных в прошлом меся

Непрочитанное сообщение time12345 » 2014-12-24 21:01:23

ох и разленился я читать маны (

а как сделать чтобы tail прятал не первый файл, а последний файл в списке?

time12345
сержант
Сообщения: 224
Зарегистрирован: 2011-09-21 1:23:43

Re: удаление файлов (кроме одного), созданных в прошлом меся

Непрочитанное сообщение time12345 » 2014-12-24 21:17:58

блин, ну не работает на фряхе эта шняга (

Код: Выделить всё

MONTH=`date -d "1 month ago" +"%m_%Y"`
пишет usage...

таки пришлось читнуть ман

Код: Выделить всё

MONTH=`date -v -1m +"%m_%Y"`
на правильной ОС так работает.

FiL
ст. лейтенант
Сообщения: 1374
Зарегистрирован: 2010-02-05 0:21:40

Re: удаление файлов (кроме одного), созданных в прошлом меся

Непрочитанное сообщение FiL » 2014-12-24 21:31:48

time12345 писал(а):блин, ну не работает на фряхе эта шняга (
Ну так надо указывать ось в посте (желательно вместе с врсией), а не жаловаться на подземный стук.
Ну и маны читать, да.

FiL
ст. лейтенант
Сообщения: 1374
Зарегистрирован: 2010-02-05 0:21:40

Re: удаление файлов (кроме одного), созданных в прошлом меся

Непрочитанное сообщение FiL » 2014-12-24 21:32:12

time12345 писал(а):ох и разленился я читать маны (

а как сделать чтобы tail прятал не первый файл, а последний файл в списке?
man head