16

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

Я знаю, что с опцией -N мы могли бы включить номера строк, но как я могу сделать так, чтобы меньше отображалось номер строки всего текстового файла?

Благодарю.

4 ответа4

17

Вы имеете в виду, как с ключом -M ?

16

Если вы откроете файл с меньшим, чем нажатие Ctrl-g отобразит текущий номер строки, общее количество строк и процент, а также показано ниже:

строки 51-100/185 байт 3228/5886 54% (нажмите RETURN)

5

less -M +Gg

для не очень больших файлов это нормально, потому что +G (команда G ) идет до конца файла

2

Просто чуть-чуть расширив предыдущие ответы. Командная строка:

less -M +Gg

делает следующее:

-M Показать текущую позицию в файле в командной строке +Gg Выполнить команды G (перейти в конец файла) и g (вернуться в начало файла)

Если из stdin читает less , что происходит, когда man показывает man-страницу, он заранее не знает общее количество строк в файле, чтобы правильно рассчитать свою позицию. Следовательно, +Gg необходим для того, чтобы less могло получить общее количество строк и, таким образом, рассчитать текущую позицию в процентах.

Я нашел полезным установить эти переменные в ~/.bashrc:

export LESS+='-M'
export MANPAGER='less +Gg'

LESS гарантирует, что все вызовы less будут показывать текущую позицию в приглашении, а MANPAGER гарантирует, что less сможет получить общее количество строк на странице man, которое less будет отображаться в приглашении. Казалось бы, более разумно не включать +Gg в LESS чтобы помешать less попытаться перейти к концу потенциально большого входного канала. Если это необходимо, всегда можно запустить команды G и g вручную.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .