У меня есть файл, в котором около миллиона строк. Мне нужно перейти к строке номер 320123, чтобы проверить данные. Как мне это сделать?
Переход к определенному номеру строки с помощью Less в Unix
Ответы (5)
Если n
- это номер строки:
ng
: переход к строке номер n. По умолчанию это начало файла.nG
: перейти к строке номер n. По умолчанию это конец файла.
Итак, чтобы перейти к строке с номером 320123, вы должны ввести 320123g
.
Скопировано прямо из Википедии.
g
, иначе вы перепрыгнете на одну строку дальше.
- person HongboZhu; 14.01.2020
less 9581553g -N file.txt less: can't open '9581553g': No such file or directory
, а также: less +G -N file.txt less: can't open '+G': No such file or directory
- person Wimateeka; 23.07.2020
less
, а не в оболочке. Сначала вы открываете файл less file.txt
, а затем вводите свою команду 9581553g
- person Stalinko; 26.10.2020
sed
или awk
, где вы могли указать конкретные номера строк в качестве параметров. Спасибо за разъяснения.
- person Wimateeka; 26.10.2020
Чтобы открыть в определенной строке прямо из командной строки, используйте:
less +320123 filename
Если вы хотите увидеть и номера строк:
less +320123 -N filename
Вы также можете выбрать отображение определенной строки файла в определенной строке терминала, когда вам нужно несколько строк контекста. Например, это откроет файл со строкой 320123 в 10-й строке терминала:
less +320123 -j 10 filename
Вы также можете использовать sed
для этого -
sed -n '320123'p filename
Будет напечатан номер строки 320123.
Если вам нужен диапазон, вы можете сделать -
sed -n '320123,320150'p filename
Если хотите от конкретной строчки до самого конца, то -
sed -n '320123,$'p filename
Изнутри меньше (в Linux):
g and the line number to go forward
G and the line number to go backwards
Используемые отдельно, g и G переместят вас к первой и последней строке файла соответственно; используются с числом, они оба эквивалентны.
Пример; вы хотите перейти к строке 320123 файла,
нажмите 'g' и после двоеточия введите число 320123
Кроме того, вы можете ввести «-N» внутри less, чтобы активировать / деактивировать номера строк. Фактически, вы можете передавать любые ключи командной строки изнутри программы, такие как -j или -N.
ПРИМЕЧАНИЕ. Вы можете указать номер строки в командной строке, чтобы начать меньше (меньше + число -N), что будет намного быстрее, чем выполнение этого изнутри программы:
less +12345 -N /var/log/hugelogfile
Это откроет файл, отображающий номера строк и начинающийся со строки 12345.
Источник: человек на 1 меньше, встроенная справка меньше (меньше 418)
Для редактирования это возможно в nano
через +n
из командной строки, например,
nano +16 file.txt
Чтобы открыть file.txt
до строки 16.
more
? :-) - person matanster   schedule 03.01.2018less
больше, но большеmore
, чемmore
, поэтомуmore
меньшеless
, поэтому используйте большеless
, если хотите меньшеmore
. - person HongboZhu   schedule 14.01.2020