13

Я стараюсь less работать в Linux, и я хочу, чтобы он что-то искал сразу после запуска.

Это в основном похоже на это:

$ less

Затем нажмите '/' , введите шаблон поиска, например "^commit \w+$" , затем нажмите ввод и нажмите 'n' чтобы найти каждый последующий результат.

Я бы хотел, чтобы меньше было запущено, а потом искать шаблон. Кажется, что на странице руководства ничего не написано о начале работы с шаблоном, но, возможно, вы можете отправить ему такие команды, как Vim.

6 ответов6

16

Вы можете использовать + для отправки произвольных команд. Например:

less +/pattern

-p PATTERN (как опубликовано nik) эквивалентен +/PATTERN .

8

От man странице:

   -ppattern or --pattern=pattern
          The  -p  option  on the command line is equivalent to specifying
          +/pattern; that is, it tells less to start at the  first  occur-
          rence of pattern in the file.

Это работает, как и ожидалось, используя последнюю версию less (436).

4

Есть два способа сделать это. Как и все остальные, вы можете использовать опции -p/--pattern :

less -p<pattern>
less --pattern=<pattern>

Ваш шаблон должен быть заключен в кавычки, так как он содержит пробел.

Однако на самом деле есть второй способ сделать это:

LESS=-p<pattern> less
LESS=--pattern=<pattern> less

Второй метод имеет одно явное преимущество. Его можно использовать с другими командами, которые используют меньше для разбиения на страницы !:

LESS=-p"^       read \[" man bash

Это может быть буквально расширено для поиска на встроенной команде bash всех встроенных команд. Однажды я немного увлекся и « привел в порядок» человека для встроенных команд.

4

Вы имеете в виду как?

менее -p PATTERN имя файла

Это в руководстве.

3

В менее man-странице действительно есть что-то.

Вы можете попробовать:

less -p<pattern>

или же

less --pattern=<patern>
0

Другой вариант заключается в том, что когда вы запускаете less введите & и pattern вашего интереса.

Таким образом, вы можете получить только те линии, которые имеют интересующий вас pattern не все линии. Значение показывает только совпадающие строки.

&/ <pattern_of_interest>

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