delete oldest file in directory

С awk:

awk -F'.' '{print $1}' filename
1
02.04.2017, 15:05
3 ответа

Кто-то ответил на этот вопрос, а затем удалил свой ответ, но я использовал ответ, который он дал.

find /path -mtime +1000 -exec rm -rf {} \;

Это удалит файлы старше 1000 дней.

1
27.01.2020, 23:34

удалить самый старый файл

find . -name '*some-pattern*' -type f -printf '%T+ %p\n' | sort | head -n1 | awk '{print $2}' | xargs rm -v

цель -name '*some_pattern*' здесь - ограничить совпадения только файлами, которые вы хотите удалить

1
27.01.2020, 23:34

В zsh:

rm  **/*(.om[-1])

(или из другой оболочки: zsh -c 'rm **/*(.om[-1])')

что означает:

  1. **/* рекурсивно собирать файлы

  2. ( ... ) — это квалификатор zsh glob

  3. . означает рассматривать только «простые» файлы (не каталоги и т. д.)

  4. om означает упорядочить их по времени модификации

  5. -1 означает выбрать только самый старый файл

Кредит Ответ Жиля здесь для вдохновения

3
27.01.2020, 23:34

Теги

Похожие вопросы