Как посчитать количество файлов в каталоге, но не рекурсивно

Простой вопрос, я уверен. Я видел ответ , который показывает, как это сделать, включая подкаталоги, но я хочу знать, сколько файлов (не папок) находится только в текущем каталоге. Благодаря.

30
задан 13 April 2017 в 15:24

6 ответов

ls -F |grep -v / | wc -l
  1. ls -F перечислить все файлы и добавить индикатор (один из * / => @ |) в записи
  2. grep -v / сохранить все строки, которые не содержат косую черту
  3. wc -l счетные линии
0
ответ дан 13 April 2017 в 15:24

Попробуйте этот oneliner:

find -maxdepth 1 -type f | wc -l
0
ответ дан 13 April 2017 в 15:24

Попробуйте

ls -al | grep ^[-] | wc -l
  1. ls -al - список всех файлов с длинным форматом списка
  2. grep ^[-] - поиск строки, начинающейся с «-», является символом для обозначения обычного файла, когда список файлов с ls -al
  3. wc -l - количество строк
0
ответ дан 13 April 2017 в 15:24

Я просто хочу добавить ответ Тома , потому что мне нравится играть с Bash . Вот так:

echo "Directory $(pwd) has $(ls -F |grep -v / | wc -l) files"

Ниже приведен пример моего каталога /data:

Directory /data has 580569 file(s).

И ниже приведены мои объяснения:

  1. echo double-quoted-message напечатает желаемое сообщение.
  2. $(any-desirable-valid-command) внутри сообщения echo в двойных кавычках напечатает результат выполнения связанной команды.
  3. pwd распечатает текущий каталог.
  4. ls -F предназначен для перечисления всех файлов и добавления индикатора (один из * / => @ |) в записи. Я скопировал это из ответа Тома .
  5. grep -v / - это команда для поиска в простом тексте, параметр -v / сохранит все строки, которые не содержат косую черту (и).
  6. wc -l напечатает подсчет строк.

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

0
ответ дан 13 April 2017 в 15:24

Если у вас установлено tree в вашей системе, вы можете использовать эту команду:

tree -L 1 /path/to/your/directory | tail -n 1

Показывает количество файлов и каталогов в этом каталоге.

-L n показывает глубину поиска.

Вы можете установить tree с помощью sudo apt-get install tree.

0
ответ дан 13 April 2017 в 15:24

Для подсчета общего количества файлов с определенным расширением вы можете набрать:

ls|grep jpg |wc -l
0
ответ дан 13 April 2017 в 15:24

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

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