Как я могу подсчитать количество файлов конфигурации в каталоге / et c - PullRequest
0 голосов
/ 09 мая 2020

Я хочу подсчитать файлы конфигурации в каталоге /etc и подсчитать все файлы, включая файлы ссылок, в каталоге /etc

Это то, что я пробовал

ls -l /etc | grep ?conf | wc -l

1 Ответ

0 голосов
/ 09 мая 2020

Попробуйте find, чтобы рекурсивно найти все файлы конфигурации:

find /etc -name '*conf' | wc -l

(Предполагается, что ни один файл конфигурации не будет содержать разрыв строки в своем имени.)

Независимо от того, хотите ли вы исключить каталоги и как вы хотите следовать символическим c ссылкам, вам нужно немного изменить эту команду:

find /etc -not -type d -name '*conf' | wc -l
find -L /etc -name '*conf' | wc -l
find /etc \( -type f -o -type l \) -name '*conf' | wc -l

Если вы не хотите находить файлы, соответствующие шаблон имени рекурсивно, вы можете указать глобальный параметр -maxdepth 1:

find /etc -maxdepth 1 -name '*conf' | wc -l

или использовать ls с переключателем, чтобы не печатать содержимое каталогов (но это будет включать каталоги в счетчике, что может быть или не быть тем, что вы хотите):

ls -1bd /etc | grep 'conf$' | wc -l

-b заменяет символы, не являющиеся графическими, c на C -style escape, так что вы даже должны безопасно, если ваши имена файлов содержат символы новой строки.

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