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

Обновлено: 06.07.2024

Довольно частенько нужно подсчитать количество файлов при выводе в консоли BASH. Хорошо если файлов 10 единиц. Как быть если их сотни и у каждого файла сложное имя. Тут идеально подойдёт команда wc. Её наилучше использовать вместе с фильтром. Например с командой grep команда wc хорошо сочетается. Возможно подсчитать количество слов в документе.

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

Подсчет строк, слов и знаков с помощью wc

Система отвечает строкой в следующем формате: l w c файл

где l - число строчек в файле;
w - число слов в файле;
c - число символов в файле.

Чтобы подсчитать количество строк, слов и символов в нескольких файлах, используйте следующий формат:

Система говорит следующим образом:

l w c файл1
l w c файл2
l w c total

Число строк, слов и символов для файл1 и файл2 отражается на отдельных строках. На последней строке отображается общее число строк, слов и знаков в двух файлах.

Подсчет данных в документе

wc text.txt
вывод: 40 149 947 text.txt

В первоначальной колонке содержится количество строк, во второй кол-во слов, в третьей кол-во знаков

Подсчёт данных в выводе командной строки Linux

ls -al | grep '.txt' | wc -l

ls -al | grep '.txt' | wc -w

Подсчет количества .txt-файлов в текущем каталоге с помощью wc:

Поиск количества файлов в директории Linux

ls | grep "name" | sort | uniq | wc -l

Подсчет уникальных строк и дубликатов в текстовом файле Linux

Буквально сегодня на работе столкнулся с довольно простой задачей, состоящей из двух подзадач: 1) нужно было подсчитать в текстовом файле количество уникальных строк 2) подсчитать в уже другом файле количество строчек, которые дублируются.

С этими задачами я справился и после этого подумал — по какой причине бы не написать небольшой пост, вдруг кому-нибудь пригодится. Подсчитаем в нём количество уникальных строчек с помощью следующей команды:

$ sort data.txt | uniq -u | wc -l

Всё достаточно просто. Утилита uniq с функцией -u выводит на экран уникальные строки (u—unique, видимо так) и с помощью | результат перенаправляется в утилиту wc , какая просто считает количество строк, т.к. исполняется с опцией -l. В самом начале нам необходимо просортировать входной поток данных (текстовый файл), иначе утилита uniq не сможет правильно подсчитать уникальные строки. Выполняется сортировка с помощью sort и результат, используя |, перенаправляется в uniq. После исполнения такой команды для файла data.txt на экран будет выведено число 5.

Для этого чтобы решить вторую подзадачу, сделаем всё тоже самое, только uniq станет выполнен с опцией -d (видимо d—duplicate):

$ sort data.txt | uniq -d | wc -l

В результате на экран выведено количество 2. Обе подзадачи решены достаточно простым способом. Записал небольшую демонстрацию кому забавно.

Подсчитать количество строк в файле Linux

Нет ничего проще, чем подсчитать количество строчек в файле.

cat filename.txt | wc -l

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

Wc Command in Linux (Count Number of Lines, Words, and Characters)

В этом руководстве мы покажем вам, как использовать wc команду, на простых и практичных примерах.

В Linux и Unix-подобных операционных системах wc команда позволяет подсчитать количество строк, слов, символов и байтов каждого заданного файла или стандартного ввода и распечатать результат.

Как использовать wc команду

Синтаксис wc команды следующий:


Команда wc может принимать ноль или более входных FILE имен. Если не FILE указано, или когда FILE есть - , wc будет читать стандартный ввод. Слово - это строка символов, разделенных пробелом, символом табуляции или новой строкой.

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

Например, следующая команда отобразит информацию о виртуальном файле /proc/cpuinfo :


Вывод будет выглядеть примерно так:

  • 448 - количество строк.
  • 3632 - количество слов.
  • 22226 - это количество символов.


При использовании стандартного ввода имя файла не отображается:


Чтобы отобразить информацию о нескольких файлах, передайте имена файлов в качестве аргументов через пробел:


Команда предоставит вам информацию о каждом файле и строку, включая общую статистику:


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

  • -l , --lines - Вывести количество строк.
  • -w , --words - Вывести количество слов.
  • -m , --chars - Вывести количество символов.
  • -c , --bytes - Вывести количество байтов.
  • -L , --max-line-length - Вывести длину самой длинной строки.


При использовании нескольких опций счетчик печатается в следующем порядке: новая строка, слова, символы, байты, максимальная длина строки.

Например, для отображения только того количества слов, которое вы бы использовали:


Вот еще один пример, который напечатает количество строк и длину самой длинной строки.


--files0-from=F Опция позволяет wc читать входные данные из файлов , указанных NUL-прерванных имен в файле F . Если F есть, - то читать имена из стандартного ввода. Например, вы можете искать файлы с помощью find команды и предоставлять эти файлы в качестве входных данных для wc :


Вывод покажет количество строк для всех файлов в /etc каталоге, имена которых начинаются с «host»:

Подсчитать количество строк

Команда wc в основном используется с -l опцией подсчета только количества строк в текстовом файле. Например, чтобы подсчитать количество строк в /etc/passwd файле, введите:


Первый столбец - это количество строк, а второй - имя файла:


Подсчитайте количество слов

Чтобы подсчитать только количество слов в текстовом файле, используйте wc -w имя файла. В следующем примере подсчитывается количество слов в


Количество слов показано в первом столбце:


Примеры команд Wc

wc команда может быть использована в комбинации с другими командами через трубопровод. Вот несколько примеров.


Подсчет файлов в текущем каталоге

Команда find передает список всех файлов в текущем каталоге с каждым именем файла в одной строке wc команде, которая подсчитывает количество строк и печатает результат:


Подсчитать количество пользователей

В приведенном ниже примере wc используется для подсчета количества строк из выходных данных getent команды.


Вывод

Команда wc обозначает «количество слов» и имеет довольно простой синтаксис. Это позволяет подсчитывать количество строк, слов, байтов и символов в одном или нескольких текстовых файлах.

В Linux и Unix-подобных операционных системах команда wc позволяет подсчитать количество строк, слов, символов и байтов в каждом заданном файле или стандартном вводе и распечатать результат.

В этом руководстве мы покажем вам, как использовать команду wc на простых и практических примерах.

Как использовать команду wc

Синтаксис команды wc следующий:

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

Например, следующая команда отобразит информацию о виртуальном файле /proc/cpuinfo :

Результат будет выглядеть примерно так:

При использовании стандартного ввода имя файла не отображается:

Чтобы отобразить информацию о более чем одном файле, передайте имена файлов в качестве аргументов, разделенных пробелом:

Команда предоставит вам информацию о каждом файле и строку, включая общую статистику:

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

При использовании нескольких параметров счетчики печатаются в следующем порядке: новая строка, слова, символы, байты, максимальная длина строки.

Например, чтобы отобразить только количество слов, которые вы бы использовали:

Вот еще один пример, который напечатает количество строк и длину самой длинной строки.

Параметр --files0-from=F позволяет wc читать ввод из файлов, указанных в файле F именами, завершающимися NUL. Если F - то читать имена со стандартного ввода. Например, вы можете искать файлы с помощью команды find и предоставлять эти файлы в качестве входных данных для wc :

В выводе будет показано количество строк для всех файлов в каталоге /etc , имена которых начинаются с «host»:

Подсчитайте количество строк

Команда wc в основном используется с параметром -l для подсчета только количества строк в текстовом файле. Например, чтобы подсчитать количество строк в /etc/passwd вы должны ввести:

Подсчитайте количество слов

Чтобы подсчитать только количество слов в текстовом файле, используйте wc -w за которым следует имя файла. В следующем примере подсчитывается количество слов в файле

Количество слов показано в первом столбце:

Примеры команд Wc

wc можно использовать в сочетании с другими командами через конвейер. Вот несколько примеров.

Подсчет файлов в текущем каталоге

Команда find передает список всех файлов в текущем каталоге с каждым именем файла в одной строке команде wc , которая подсчитывает количество строк и выводит результат:

Подсчитайте количество пользователей

В приведенном ниже примере wc используется для подсчета количества строк в выводе команды getent .

Выводы

Команда wc означает «подсчет слов» и имеет довольно простой синтаксис. Он позволяет подсчитывать количество строк, слов, байтов и символов в одном или нескольких текстовых файлах.

Если у вас есть какие-либо вопросы или отзывы, не стесняйтесь оставлять комментарии.

Анализ файлов - неотъемлемая часть работы с ними. Иногда возникает необходимость подсчитать количество строк или слов в тексте. С этой задачей эффективно справляется команда wc Linux.

Утилита устанавливается по умолчанию практически во всех дистрибутивах GNU/Linux. В этой статье рассмотрим её функции и применение на практике.

Синтаксис команды wc

Для запуска утилиты откройте терминал и введите:

Терминал будет ожидать ввода данных. После нажатия комбинации клавиш Ctrl + D командный интерпретатор завершит работу программы и выведет три числа, обозначающих количество строк, слов и байт введённой информации.

Утилита может обрабатывать файлы. Стандартная инструкция выглядит так:

  • wc — имя утилиты;
  • file — название обрабатываемого файла.

Программа также может принимать параметры для анализа отдельных значений. Наиболее используемые из них приведены в таблице ниже:

Параметр Длинный вариант Значение
-c --bytes Отобразить размер объекта в байтах
-m --count Показать количесто символов в объекте
-l --lines Вывести количество строк в объекте
-w --words Отобразить количество слов в объекте

Под объектом следует понимать файл или данные, полученные на стандартный поток ввода.

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

Применение команды wc

Обработка стандартного потока ввода с завершением через Ctrl + D:

Команда wc

Согласно анализу, было введено 4 строки, содержащих 5 слов, объёмом в 35 байт.

Перенаправление потока вывода на вход wc:

Перенаправление на wc

Обработка всех файлов с расширением .sh в текущем каталоге:

Обработка bash-скриптов wc

В конце выводится итоговая информация, суммирующая значения для каждого столбца.

Выведем только количество символов и строк двух файлов:

Количество символов и строк wc

Обратите внимание: порядок указания параметров не влияет на итоговый вид информации. Программа всегда выводит данные в виде СТРОК — СЛОВ — БАЙТ (СИМВОЛОВ) [— ФАЙЛ]. Если какой-то параметр будет отсутствовать, его столбец просто проигнорируется, не задевая остальные. Количество символов будет стоять первым, если в команде содержался и вывод байт.

Вывод

Команда wc Linux является эффективным инструментом при анализе файлов в GNU/Linux. Она может обрабатывать как стандартный поток ввода, так и несколько файлов одновременно. Для извлечения конкретных данных используются параметры командной строки.

Команда wc (количество слов) в операционных системах Unix/Linux используется для определения количества символов новой строки, количества слов, байтов и символов в файлах, указанных аргументами файла. Синтаксис команды wc показан ниже.

Ниже приведены параметры и способы использования, предоставляемые командой.

Итак, давайте посмотрим, как мы можем использовать команду «wc» с их немногими доступными аргументами и примерами в этой статье. Мы использовали файл tecmint.txt для тестирования команд. Давайте узнаем вывод файла с помощью команды cat, как показано ниже.

1. Базовый пример команды WC

Команда «wc» без передачи каких-либо параметров отобразит основной результат файла «tecmint.txt». Три числа, показанные ниже, - это 12 (количество строк), 16 (количество слов) и 112 (количество байтов) файла.

2. Подсчитайте количество строк

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

3. Отображение количества слов

Использование аргумента «-w» с командой «wc» позволяет распечатать количество слов в файле. Введите следующую команду для подсчета слов в файле.

4. Подсчитайте количество байтов и символов.

При использовании параметров «-c» и «-m» с командой «wc» будет выведено общее количество байтов и символов, соответственно, в файле.

5. Отображение длины самой длинной строки

Команда «wc» позволяет использовать аргумент «-L», его можно использовать для вывода длины самой длинной (количество символов) строки в файле. Итак, у нас есть самая длинная символьная строка («Scientific Linux») в файле.

6. Проверьте дополнительные параметры туалета.

Для получения дополнительной информации и помощи по команде wc просто запустите «wc –help» или «man wc» из командной строки.

Читайте также: