Как быстро посчитать файлы / папки в каталоге по возрасту? - PullRequest
0 голосов
/ 11 октября 2019

Я пытаюсь получить количество всех файлов или папок старше 1 дня в / tmp с помощью:

find /tmp/* -ctime +1 | wc -l

Это займет 30 минут для запуска. Однако ls /tmp | wc -l запускается в секунду и показывает, что файлов всего около 50 000.

Почему find такой медленный? Как мне ускорить его?

Редактировать: Вы можете смоделировать эту ситуацию самостоятельно, запустив:

 python -c "import tempfile, os; [os.close(tempfile.mkstemp()[0]) for i in range(50000)]"

и затем выполнив мою команду find.

1 Ответ

0 голосов
/ 12 октября 2019

Список файлов за сегодня с помощью ls и количество файлов / папок в папке tmp:

Пример:

ls -R -al --time-style=+%D /tmp | grep `date +%D`|wc -l

В этом списке будут отображаться файлы только по вашему запросу, измените дату после ваших потребностей.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...