Как выполнить поиск без учета регистра с использованием модификатора шаблона, используя less?
-
08-06-2019 - |
Вопрос
Кажется, что единственный способ сделать это — передать параметр -i, когда вы изначально запускаете less.Кто-нибудь знает какой-нибудь секретный хак, позволяющий сделать что-то подобное?
/something to search for/i
Решение
Вы также можете ввести команду -I
пока меньше работает.Он переключает чувствительность к регистру при поиске.
Другие советы
Вы также можете установить переменную среды LESS
я использую LESS=-Ri
, чтобы я мог перекачивать цветной вывод из grep
в него и поддерживать последовательность цветов ANSI.
Еще одна малоиспользуемая особенность less, которую я нашел, - это запуск с +F
в качестве аргумента (или ударить СДВИГ+Ф хотя и меньше).Это заставляет его следовать за файлом, который вы открыли, точно так же, как tail -f <file>
воля.Очень удобно, если вы просматриваете файлы журналов из приложения и, вероятно, захотите создать резервную копию страницы (например, если оно генерирует 100 строк журнала каждую секунду).
Дополнение к тому, что сказал @Juha:На самом деле -i
включает регистронезависимую функцию с помощью SmartCasing, т. е. если ваш поиск содержит заглавную букву, то поиск будет учитывать регистр, в противном случае он будет нечувствителен к регистру.Подумайте об этом как :set smartcase
в Виме.
Например.:с -i
, поиск «журнала» в «Журнале,..» будет соответствовать, тогда как «Журнал» в «журнале,..» не будет соответствовать.
Похоже, что вы можете вызывать эту функцию для каждого поиска следующим образом:
less prompt> /search string/-i
Этот вариант есть в less
интерактивная справка, к которой вы можете получить доступ через h
:
less prompt> h
...
-i ........ --ignore-case
Ignore case in searches that do not contain uppercase.
-I ........ --IGNORE-CASE
Ignore case in all searches.
...
Я не тщательно проверял, но помощь в less
в версии 487 для MacOS, а также в других дистрибутивах Linux эта опция указана как доступная.
В MacOS вы также можете установить более новую версию less
с помощью brew
:
$ brew install less
$ less --version
less 530 (POSIX regular expressions)
Copyright (C) 1984-2017 Mark Nudelman
Рекомендации
При использовании флага -i обязательно вводите строку поиска полностью в нижнем регистре, поскольку если какая-либо буква в верхнем регистре, то это точное совпадение.
Смотрите также:флаг -I (заглавная i) для less(1), чтобы изменить это поведение.