|
bash - удалять файлы по названию старше 2 недель
|
|||
---|---|---|---|
#18+
есть файлы в формате file_name_20190609.csv file_name_20190610.csv как мне хранить только файлы только за последние 2 недели учитываю дату из названия, а остальные удалять поделитесь примером bash скрипта заранее спс ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2019, 10:29 |
|
bash - удалять файлы по названию старше 2 недель
|
|||
---|---|---|---|
#18+
dakeподелитесь примером bash скрипта man bash man find man sort ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2019, 11:09 |
|
bash - удалять файлы по названию старше 2 недель
|
|||
---|---|---|---|
#18+
dake, man find Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18.
Код: sql 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. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58.
... |
|||
:
Нравится:
Не нравится:
|
|||
12.06.2019, 22:03 |
|
bash - удалять файлы по названию старше 2 недель
|
|||
---|---|---|---|
#18+
В вопросе есть одно уточнение, не позволяющее тупо юзать find dakeкак мне хранить только файлы только за последние 2 недели учитываю дату из названия Как вариант -- сначала получить дату в строковом виде на 2 недели назад, а затем, благо формат располагает, /*сортировать и*/ удалять тех, кто меньше при строковом сравнении Дату можно получить, например, GNU-шным date (date -d 'now-14days' +'%Y%m%d') или тем-же AWK. Хотя, конечно, можно потрахаться и с арифметикой дней/месяцев/годов ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 06:19 |
|
bash - удалять файлы по названию старше 2 недель
|
|||
---|---|---|---|
#18+
Вячеслав ЛюбомудровВ вопросе есть одно уточнение, не позволяющее тупо юзать find dakeкак мне хранить только файлы только за последние 2 недели учитываю дату из названия Как вариант -- сначала получить дату в строковом виде на 2 недели назад, а затем, благо формат располагает, /*сортировать и*/ удалять тех, кто меньше при строковом сравнении Дату можно получить, например, GNU-шным date (date -d 'now-14days' +'%Y%m%d') или тем-же AWK. Хотя, конечно, можно потрахаться и с арифметикой дней/месяцев/годов в этом собственно и вопрос, функция вычисления даты "now -2weeks" - в общем случае не тривиальная TS: не плохо бы указывать под какой системой весь этот колхоз ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 09:31 |
|
bash - удалять файлы по названию старше 2 недель
|
|||
---|---|---|---|
#18+
Вячеслав ЛюбомудровВ вопросе есть одно уточнение, не позволяющее тупо юзать find dakeкак мне хранить только файлы только за последние 2 недели учитываю дату из названия Как вариант -- сначала получить дату в строковом виде на 2 недели назад, а затем, благо формат располагает, /*сортировать и*/ удалять тех, кто меньше при строковом сравнении Дату можно получить, например, GNU-шным date (date -d 'now-14days' +'%Y%m%d') или тем-же AWK. Хотя, конечно, можно потрахаться и с арифметикой дней/месяцев/годов Чтобы не считать, делаем циклы по годам/месяцам/дням Генерим синтетическую дату и проверям наличие файла Вот скрипт накатал Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
Если заменить for шаблоны типа Код: sql 1.
на простой список Код: sql 1.
и башовскую кракозябру Код: sql 1.
на Код: sql 1.
То будет практически POSIX ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 10:10 |
|
bash - удалять файлы по названию старше 2 недель
|
|||
---|---|---|---|
#18+
fandrВячеслав ЛюбомудровВ вопросе есть одно уточнение, не позволяющее тупо юзать find пропущено... Как вариант -- сначала получить дату в строковом виде на 2 недели назад, а затем, благо формат располагает, /*сортировать и*/ удалять тех, кто меньше при строковом сравнении Дату можно получить, например, GNU-шным date (date -d 'now-14days' +'%Y%m%d') или тем-же AWK. Хотя, конечно, можно потрахаться и с арифметикой дней/месяцев/годов в этом собственно и вопрос, функция вычисления даты "now -2weeks" - в общем случае не тривиальная TS: не плохо бы указывать под какой системой весь этот колхозЧто тут нетривиального? Я привел один способ прямой (через GNU date), второй -- чуть подумать (через AWK) Ну или можно потрахаться, как продемонстрировано в предыдущем посте ... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 10:30 |
|
bash - удалять файлы по названию старше 2 недель
|
|||
---|---|---|---|
#18+
Хотя да, в той же солярке и awk резанный, но можно установить гнутый Код: plaintext 1. 2. 3. 4. 5. 6.
... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 10:59 |
|
bash - удалять файлы по названию старше 2 недель
|
|||
---|---|---|---|
#18+
Вячеслав ЛюбомудровВ вопросе есть одно уточнение, не позволяющее тупо юзать find dakeкак мне хранить только файлы только за последние 2 недели учитываю дату из названия Найдено в поиске "man find" Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
... |
|||
:
Нравится:
Не нравится:
|
|||
13.06.2019, 17:50 |
|
|
start [/forum/topic.php?fid=25&msg=39826289&tid=1481153]: |
0ms |
get settings: |
11ms |
get forum list: |
13ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
44ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
44ms |
get tp. blocked users: |
1ms |
others: | 286ms |
total: | 417ms |
0 / 0 |