[unix] less를 사용하여 패턴 수정자를 사용하여 대소 문자를 구분하지 않는 검색을 어떻게 수행합니까?

이 작업을 수행하는 유일한 방법은 처음에 적게 실행했을 때 -i 매개 변수를 전달하는 것 같습니다. 누구 든지이 일을하는 데 필요한 비밀 해킹을 알고 있습니까?

/something to search for/i



답변

-Iless가 실행되는 동안 command 를 입력 할 수도 있습니다 . 검색시 대소 문자 구분을 토글합니다.


답변

환경 변수를 설정할 수도 있습니다 LESS

나는 LESS=-Ri컬러 출력을 펌핑 grep하고 ANSI 컬러 시퀀스를 유지할 수 있도록을 사용 합니다.

내가 찾은 less의 또 다른 작은 기능은 +F인수로 시작하는 것입니다 (또는 적은 동안 SHIFT+ F를 누르십시오 ). 이렇게하면 열어 본 파일과 같은 방식으로 파일을 따라갑니다 tail -f <file>. 응용 프로그램에서 로그 파일을보고 있고 페이지 백업을 원할 경우 (예 : 매초마다 100 줄의 로깅 행을 생성하는 경우) 매우 유용합니다.


답변

@Juha가 말한 추가 기능 : 실제로 -iSmartCasing에서 대소 문자를 구분하지 않습니다 (예 : 검색에 대문자가 포함 된 경우), 대소 문자를 구분하여 검색합니다. 그것을 :set smartcaseVim에서 생각하십시오 .

예 :를 사용 -i하면 ‘Log, ..’에서 ‘log’에 대한 검색이 일치하는 반면 ‘log, ..’에서 ‘Log’가 일치하지 않습니다.


답변

다음과 같이 검색별로이 기능을 소환 할 수 있습니다.

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.
...

광범위하게 확인하지는 않았지만 lessMacOS 및 다른 Linux 배포판 버전 487 의 도움말 에는이 옵션이 사용 가능한 것으로 표시되어 있습니다.

MacOS에서는 lessvia 의 최신 버전을 설치할 수도 있습니다 brew.

$ brew install less
$ less --version
less 530 (POSIX regular expressions)
Copyright (C) 1984-2017  Mark Nudelman

참고 문헌


답변

-i 플래그를 사용할 때는 문자가 대문자이면 정확히 일치하므로 검색 문자열을 소문자로 완전히 입력하십시오.

이 동작을 변경하려면 less (1)의 -I (capital i) 플래그를 참조하십시오.


답변