Вывод файла в терминале с нумерацией строк. Linux статьи
Написать статью
Войдите, чтобы писать статьи

Вывод файла в терминале с нумерацией строк

7

Команда nl Расскажу о двух простых способах вывода текстового файла в терминале с отображением номеров строк. Это может быть полезно, например, программистам или тем, кто много работает с конфигурационными файлами, используя терминал в Linux.

Для теста я буду использовать файл следующего содержания, содержащий 4 строки:

Строка номер один

Строка номер три
Строка номер четыре

Вторая строка в файле пустая.

Команда nl

В простейшем случае для команды nl необходимо указать имя файла:

nl textfile

В результате на экран будет выведено содержимое файла, а слева будут стоять номера строк:

$ nl textfile
     1	Строка номер один
       
     2	Строка номер три
     3	Строка номер четыре

Обратите внимание, что пустую строку в файле команда nl проигнорировала. Для того, чтобы учитывались все строки используется ключ -ba:

$ nl -ba textfile
     1	Строка номер один
     2	
     3	Строка номер три
     4	Строка номер четыре

Команда nl поддерживает различные форматы вывода (стили) и некоторые дополнительные опции. Для получения справки выполните:

man nl

Команда cat с ключом -n

У команды cat есть аргумент -n, который предназначен для вывода файла с нумерацией строк. Выполним:

cat -n textfile
     1	Строка номер один
     2	
     3	Строка номер три
     4	Строка номер четыре

Мы получили аналог выполнения nl -ba textfile. Для пропуска пустых строк необходимо использовать ключ -b:

cat -b textfile
Лайков: 0
войдите, чтобы ставить лайки
7
  • Опубликовано: 22.08.2013

Комментарии

DmA
22.08.2013
15:43
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
Спасибо! Полезные команды!
Razlagutt
23.08.2013
22:21
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
Поддерживаю! Нужная инфа!
shilgen
Активный пользователь
Активный
24.08.2013
20:13
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
cat -b идет в блокнот, а:
nl -w1 README.md
выглядит красивее (нумерация идет с минимальным отступом)
артем
11.09.2013
12:00
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
спс
google
31.10.2013
21:41
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
Отлично!
Алексей
06.11.2013
02:26
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
А как сделать поиск в файле и вывести только номер строки, где есть совпадение.

grep -n выводит также и содержимое.
Antonio
21.02.2017
12:03
Постоянная ссылка на комментарийПостоянная ссылка на комментарий
0
войдите, чтобы ставить лайки
А как сделать поиск в файле и вывести только номер строки, где есть совпадение.

вариант 1:

$ grep -n zebra top-NNN.txt | cut -d: -f1
979

вариант 2:

$ grep -n zebra top-NNN.txt | awk 'BEGIN {FS=":"} {print $1}'
979

Написать комментарий

Ваше имя:
Текст комментария:
  • Уважать других.
  • Не ругаться.
  • Без оскорблений.
  • Без грубости.
  • Не переходить на личности.
  • Писать на русском языке.
  • Без политики.
  • Без флуда.
Правила