Как удалить файлы в зависимости от их использования?

Как я могу использовать скрипт для удаления файлов в зависимости от того, сколько я их использую?

В каталоге находится большое количество файлов. Я хотел бы сохранить такие файлы, которые я использую (открываю) очень часто. Я хотел бы удалить те, которые я не использовал в определенный период.

3
задан 1 March 2014 в 02:09

2 ответа

Вы захотите использовать свойство метки времени на рассматриваемых файлах. Я рекомендовал бы писать простой сценарий в ударе что-то вроде этого:

#!/bin/bash
for i in `ls -1 *.log`
  do
    myfile=`ls -l $i | awk '{print $6,$7,$9}'`
    if [[ ${myfile% *} = 'Jan 1' ]];
    then
      echo "Removing ${myfile##* }"
      #rm ${myfile##* }
    else
      echo "Failed to remove file ${myfile##* }"
    fi
done

Дают ему попытку. Если этот сценарий дает Вам, что Вы ищете, то просто удаляют "#" символ перед командой RM для выполнения операции удаления.

0
ответ дан 1 March 2014 в 02:09

Можно использовать следующую команду для удаления файлов, которые были в последний раз изменены 7 или больше дней назад.

find <directory path> -ctime +7 -delete
0
ответ дан 19 April 2019 в 03:55

Другие вопросы по тегам:

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