Переход к определенному номеру строки с использованием Less в Unix

248

У меня есть файл, содержащий около миллиона строк. Итак, мне нужно перейти к строке 320123, чтобы проверить данные, как это сделать?

  • 0
    Как насчет того, чтобы сделать это с more ? :-)
Теги:
search

5 ответов

327
Лучший ответ

Если n является номером строки:

  • ng: перейти к номеру строки n. Значение по умолчанию - это начало файла.
  • ng: перейти к номеру строки n. По умолчанию это конец файла.

Итак, чтобы перейти к строке номер 320123, вы должны ввести 320123g.

Скопировано прямо из Wikipedia.

117

Чтобы открыть на определенной строке прямо из командной строки, используйте:

less +320123 filename

Если вы также хотите увидеть номера строк:

less +320123 -N filename

Вы также можете выбрать отображение определенной строки файла в определенной строке терминала, если вам нужно несколько строк контекста. Например, это откроет файл с строкой 320123 на 10-й строке терминала:

less +320123 -j 10 filename
49

Вы можете использовать sed для этого тоже -

sed -n '320123'p filename 

Это напечатает номер строки 320123.

Если вы хотите диапазон, то вы можете сделать -

sed -n '320123,320150'p filename 

Если вы хотите от определенной линии до самого конца, тогда -

sed -n '320123,$'p filename 
22

Изнутри меньше (в Linux):

 g and the line number to go forward

 G and the line number to go backwards

Используется отдельно, g и G отправят вас в первую и последнюю строку в файле соответственно; используемые с номером, оба они эквивалентны.

Пример; вы хотите перейти к строке 320123 файла,

нажмите 'g' и после типа двоеточия в номере 320123

Кроме того, вы можете набрать '-N' меньше, чтобы активировать/деактивировать номера строк. На самом деле вы можете передавать любые ключи командной строки из программы, такие как -j или -N.

ПРИМЕЧАНИЕ. Вы можете указать номер строки в командной строке, чтобы начать меньше (меньше + номер -N), что будет намного быстрее, чем делать изнутри программы:

less +12345 -N /var/log/hugelogfile

Это откроет файл, отображающий номера строк и начинающийся с строки 12345

Источник: человек 1 меньше и встроенная справка меньше (меньше 418)

  • 1
    Интересно, Google решил взять часть вашего ответа для их отображаемого ответа, когда гуглил: «меньше идти в линию» (хороший ответ, IMO)
4

Для редактирования это возможно в nano через +n из командной строки, например,

nano +16 file.txt

Открыть file.txt до строки 16.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню