Как получить количество байтов в одной строке файла?

Мне интересно, как я могу получить количество байтов только в одной строке файла.

Я знаю, что могу использовать wc -l чтобы получить количество строк в файле, а wc -c – общее количество байтов в файле. Однако я хочу получить количество байтов только в одной строке файла.

Как я смогу это сделать?

3 Solutions collect form web for “Как получить количество байтов в одной строке файла?”

 sed -n 10p myfile | wc -c 

будет считать байты в десятой строке myfile (включая символ linefeed / newline).

Немного менее читаемый вариант,

 sed -n "10{p;q;}" myfile | wc -c 

(или sed '10!d;q' или sed '10q;d' ) перестанут читать файл после десятой строки, что было бы интересно для более длинных файлов (или потоков). (Спасибо Тиму Кеннеди и Питеру Кордесу за обсуждение, ведущее к этому.)

Существуют сопоставления производительности различных способов извлечения строк текста в линии cat X в строку Y в огромном файле .

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

 line=10 tail -n "+$line" myfile | head -n 1 | wc -c 

установите line на номер строки, которую нужно подсчитать.

Немного более простое использование awk :

 awk 'NR==10{print length($0)}' myfile 
  • Количество вкладок в строке в текстовом файле с utils
  • grep для строки в нескольких файлах под tar и print wc -l
  • Количество строк, выводимых ls
  • Возвращает количество совпадений с помощью find / replace с помощью sed
  • Использование ls с командой wc
  • `ls / | wc -l` указывает больше строк, чем `ls /` показывает
  • Подсчет количества строк в файле независимо от символа окончания строки
  • команда wc подсчитывает дополнительные символы
  • Ускорение команды поиска rm с проверкой путем распараллеливания
  • Как получить число знаков препинания из файла
  • Почему wc получает неправильный результат с выходом из ps
  • line (записи) Count и grep вместе в одной команде в dat-файле
  • Linux и Unix - лучшая ОС в мире.