Как найти все папки в /var, содержащие log в пути и содержащие более 10 файлов, вывести названия папок и количество файлов в них

for i in `find -L /var/ -wholename \*log\* -type d`; do COUNT=`ls -1U $i | wc -l`; if [ $COUNT -gt 10 ]; then echo $i $COUNT; fi; done


Данная команда выполняет следующее:
1. Ищет все папки в директории /var, в пути которых присутствует подстрока «log» и которые являются символическими ссылками (-L) и являются директориями (-type d).
2. Для каждой найденной папки выполняет следующие действия:
— Считает количество файлов в папке с помощью команды «ls -1U $i | wc -l».
— Если количество файлов больше 10, то выводит название папки и количество файлов.

Эта команда полезна для поиска и анализа папок, содержащих журналы (log), в данном случае в директории /var. Можно использовать альтернативные способы подсчета количества файлов (например, через команду «find -type f | wc -l»), однако данная команда предоставляет более точную информацию о количестве файлов в каждой папке и выполняет это задание эффективно.

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *