Количество файлов в папке Linux

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

Это может быть полезно во многих случаях, например, при написании различных скриптов и других подобных работ. Я попытаюсь охватить все возможные способы сделать это в терминале.

Как посмотреть количество файлов в папке Linux

Самый простой способ решить эту задачу — использовать утилиту ls вместе с утилитой wc. Они покажут сколько файлов находится в текущей папке:

ls -l | wc

В моем случае утилита выдала результат 21, но поскольку ls выводит размер всех файлов в папке строкой total, то у нас файлов на один меньше. Нужно учесть, что тут отображаются еще и директории. Каждая директория начинается с символа «d», а каждый файл с «-«. Для символических ссылок используется «l». Посмотрите внимательно на вывод ls:

ls

Чтобы их отсеять используйте grep:

ls -l | grep "^-" | wc

 

Эта конструкция выберет только те строки, которые начинаются на дефис. Если вас интересуют не только обычные файлы, но и скрытые, то можно использовать опцию -a:

ls -la | grep "^-" | wc

 

Так можно подсчитать количество папок:

ls -la | grep ^d | wc

А так символических ссылок:

ls -la | grep ^l | wc

Если вам нужно подсчитать количество файлов во всех подпапках, то можно использовать опцию -R:

ls -laR | grep "^-" | wc

С фильтром только файлы нам уже не страшно, что команда будет выводить служебную информацию. Если вы не хотите использовать ls, можно воспользоваться утилитой find:

find . -maxdepth 1 -type f | wc

Если нужно смотреть не только количество файлов в папке, но и подпапок, просто не нужно использовать -type f:

find . -maxdepth 1 | wc

Только папки отдельно:

find . -maxdepth 1 -type d | wc

А в случае, когда необходимо перебрать все файлы во всех подпапках, не устанавливайте параметр -maxdepth:

find . | wc

Все эти команды это очень хорошо, но есть еще одно, более удобное средство посчитать количество файлов linux, это утилита tree.

Количество файлов в папке с помощью tree

Утилита tree выводит дерево файлов и папок, а потом подсчитывает их количество по отдельности. Кроме того, утилита имеет множество опций и настроек. Но она не поставляется в системе по умолчанию. Для ее установки в Ubuntu выполните:

$ sudo apt install tree

Синтаксис утилиты очень прост:

$ tree опции каталог

Теперь разберем ее основные опции:

  • -a — выводить все файлы, включая файлы, которые начинаются на точку;
  • -d — выводить только директории;
  • -l — открывать символические ссылки;
  • -f — выводить полный путь к файлу;
  • -x — оставаться только в пределах этого раздела, не переходить по точкам монтирования;
  • -L — устанавливает максимальный уровень вложенности;
  • -P — выбирать только те файлы и папки, которые подходят под регулярное выражение;
  • -I — не выводить файлы, которые подходят под регулярное выражение;
  • —prune — не выводить пустые папки;
  • -o — записать вывод в файл;

В утилиты есть еще опции по сортировке выводимого дерева и по формату вывода имен файлов, но мы не будем их рассматривать, поскольку нас интересует только количество файлов в папке Linux. Сначала считаем количество файлов и папок во всех подпапках:

tree

Теперь только в текущей, задаем максимальную вложенность равной единице:

tree -L 1

Еще можем включить вывод всех файлов, включая скрытые:

tree -aL 1

Или выберем только те, которые содержат второй символ в имени «a»:

tree -aL 1 -P ?а*

Выводы

В этой небольшой статье мы рассмотрели как посмотреть количество файлов в папке Linux. Как видите, это очень просто. Надеюсь, эта информация была полезной для вас. Если у вас остались вопросы, спрашивайте в комментариях!

Creative Commons License
Статья Количество файлов в папке Linux распространяется под лицензией Creative Commons ShareAlike 4.0 при копировании материала ссылка на источник обязательна.
Ваше имя тоже может быть здесь. Начните писать статьи для Losst. Это просто! Смотрите подробнее как начать писать статьи - Пишите для нас

Оцените статью:

Звёзд: 1Звёзд: 2Звёзд: 3Звёзд: 4Звёзд: 5 (3 оценок, среднее: 4,67 из 5)
Загрузка...

2 комментария

  1. anial Сентябрь 8, 2017 Ответить

Ответить

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: