Команда wc: строки, слова и байты без путаницы
Посчитайте переводы строк, слова и байты с wc. Узнайте, почему последняя строка без newline меняет результат и как читать подпись имени файла.
Назначение команды
wc измеряет вход по выбранному признаку. Самая частая путаница связана с -l: он считает символы перевода строки, а не число визуально показанных фрагментов. Поэтому файл с текстом без финального newline может выглядеть как одна строка и дать ноль.
Синтаксис и учебный пример
Форма wc [ОПЦИИ] [ФАЙЛ...] читает перечисленные источники или stdin при отсутствии имён. При передаче имени рядом с числами появляется подпись файла. В pipeline обычно получается только числовой результат без такой подписи.
wc -l logs/sensor.logПроверка: Результат: 4 logs/sensor.log, потому что в журнале четыре newline.
Опции и варианты записи
Таблица описывает реальную команду. Поддержка в виртуальной среде перечислена отдельно в конце материала.
| Запись | Смысл |
|---|---|
| -l | Количество переводов строк. |
| -w | Количество слов по правилам разделения, зависящим от реализации и локали. |
| -c | Количество байтов. |
| -m | Количество символов у GNU wc; это отдельная величина от байтов. |
Вывод, ошибки и статус
Числа печатаются в stdout, ошибки чтения — в stderr. Ноль является полноценным результатом подсчёта, а не сигналом неуспеха. Если предыдущая команда pipeline не смогла открыть источник, нулевой wc сам по себе не объясняет причину.
На что обратить внимание
Буква кириллицы в UTF-8 занимает больше одного байта, поэтому -c нельзя подписывать как число символов. Для точного разбора нескольких выходных колонок учитывайте формат и локаль, а для сложных имён — не смешивайте имя файла с числом.
Реальная система и учебная модель
Симулятор поддерживает -l, -w и -c, считает UTF-8 байты и использует JavaScript-разделение слов. -m и полное поведение локалей GNU wc не реализованы. Для счёта объектов через find учитывайте возможность newline в настоящих именах файлов.
Технические источники
Использованы для проверки поведения. Объяснения и учебные сценарии созданы для проекта.
- GNU Coreutils — документация утилит
Проверка текста: 2026-09-06. Нативное исполнение на всей матрице дистрибутивов ещё не подтверждено.
Основные понятия общие для Linux. Состав утилит, версии и системные настройки зависят от окружения.
От материала к практике
Выберите следующую тему в каталоге Linux или проверьте знакомые команды в учебном терминале.