wc
(сокращение от слова « счетчик слов ») — команда в Unix , Plan 9 , Inferno и Unix-подобных операционных системах . Программа считывает либо стандартный ввод , либо список компьютерных файлов и генерирует одну или несколько следующих статистических данных: количество новых строк , количество слов и количество байтов . Если предоставляется список файлов, следует как статистика по отдельным файлам, так и общая статистика.
Пример выполнения wc :
$ туалет foo бар 40 149 947 foo 2294 16638 97724 бар 2334 16787 98671 всего
В первом столбце указано количество новых строк. Это означает, что текстовый файл foo
содержит 40 новых строк и bar
2294 новых строки, что в итоге дает 2334 новых строки. Во втором столбце указано количество слов в каждом текстовом файле, показывая, что в нем 149 слов foo
и 16 638 слов bar
, что в общей сложности составляет 16 787 слов. В последнем столбце указано количество символов в каждом текстовом файле, то есть файл foo
содержит 947 символов, а bar
97724 символа — всего 98671 символ.
Более новые версии wc
могут различать количество байтов и символов . Эта разница возникает в Unicode , который включает многобайтовые символы. Желаемое поведение выбирается с помощью опций -c
или -m
.
Через конвейер его также можно использовать для предварительного просмотра размера вывода команды с потенциально большим выводом без вывода текста в консоль:
$ grep -r "пример" | туалет 1071 23337 101349
wc
является частью руководства по переносимости X/Open, начиная с выпуска 2 1987 года. Он был унаследован в первой версии POSIX.1 и единой спецификации Unix . [1] Он появился в версии 1 Unix . [2]
GNU wc
раньше был частью пакета GNU textutils ; теперь это часть GNU coreutils . Версия, wc
входящая в состав GNU coreutils, была написана Полом Рубином и Дэвидом Маккензи. [3]
Команда wc
также является частью инструментов MSX -DOS2 ASCII для MSX-DOS версии 2. [4]
Команда доступна в виде отдельного пакета для Microsoft Windows как часть проекта GnuWin32 [5] и коллекции UnxUtils , состоящей из собственных Win32- портов распространенных GNU Unix-подобных утилит. [6]
Команда wc также была перенесена в операционную систему IBM i . [7]
wc -c <filename>
печатает количество байтовwc -l <filename>
печатает количество строкwc -m <filename>
печатает количество символовwc -w <filename>
печатает количество словwc -L <filename>
печатает длину самой длинной строки (расширение GNU)