매뉴얼 페이지를 검색할 때 대소문자를 구분하지만 대문자만 검색됩니다. 예를 들어 는 x
일치 x
하고 X
와만 X
일치합니다 x
. 이는 man-db
Fedora 파생 제품에서 기본적으로 사용되는 man 버전이며 다른 시스템에서도 사용할 수 있습니다. man man
기본 호출기가 환경에 정의되어 있지 less -s
않으며 내 것이 바로 그 것이며 less에 대한 별칭이 없다고 말합니다.$LESS
$PAGER
less
less
혼자 부를 때의 행동 이 아닙니다 .
x
사용할 때 소문자만 소문자와 일치하도록 강제합니까 ?x
man
답변1
사람들은 "Less"라고 부릅니다. 개인 수준에서 유일한 제어는 Less를 호출하는 옵션입니다.
Less의 검색 대소문자 구분은 두 가지 옵션으로 제어됩니다.
- 유효한 경우
-I
검색은 대소문자를 구분하지 않습니다.a
또는 를 사용하여 및 을A
일치시킬 수 있습니다 .a
A
-i
유효하지만 유효하지 않은 경우-I
검색은 대소문자를 구분하지만 패턴에 대문자가 포함되지 않은 경우에만 해당됩니다.
Less에 대한 기본 옵션을 설정 하면 -I
매뉴얼 페이지 내에서도 모든 검색이 대소문자를 구분하지 않습니다.
Man-db는 환경 변수를 통해 호출기에 추가 옵션을 전달하고 LESS
Less는 명령줄 옵션과 동일한 방식으로 해석됩니다. 이 설정은 컴파일 시 하드코딩되며 .로 시작됩니다 -i
. (이 값 "-ix8RmPm%s$PM%s$"
은 Man-db 2.6.2 기준이며 이 P…$
부분은 프롬프트 문자열입니다.)
매뉴얼 페이지 검색에서 대소문자를 구분하지 않거나 항상 대소문자를 구분하지 않으려면 man-db 자체에서 구성할 수 없습니다. Man-db가 현재 값이 있는 경우 해당 내용을 현재 값에 추가하므로 환경 변수를 조작하기 위한 별칭 man
또는 래퍼 스크립트를 만들 수 있습니다 .LESS
alias man='LESS="$LESS -I" man'
-i
매뉴얼 페이지에서 기본적으로 검색이 항상 대소문자를 구분하도록 이 옵션을 끄려면 다음을 수행하십시오 .
alias man='LESS="$LESS -+i" man'
LESS
환경 변수를 설정하여 다른 값을 하드코딩할 수도 있지만 MANLESS
그렇게 하면 값을 으로 man
설정하기만 하면 사용자 정의 헤더 라인("맨 페이지 ") 및 기타 유용한 기능(특히 다음을 사용하여) 을 잃게 됩니다. 굵은 글씨와 밑줄 서식을 포함합니다 ).LESS
MANLESS
foo(42)
-R
답변2
이는 less
' -i
(명령줄 스위치) "대소문자를 구분하지 않는" 모드가 작동하는 방식입니다(즉, 여전히 대문자를 구분합니다). Gilles가 지적했듯이 이것을 사용하면 man-db로 컴파일됩니다.
+-i
Gilles의 답변 WRT 별칭 또는 사용자 정의 설정에 표시된 방법 외에도 MANLESS
매뉴얼 페이지가 열린 후 엄격한 대소문자 일치를 전환할 수도 있습니다 -i
(이렇게 하면 스위치가 켜지고 꺼집니다). "중요" 메시지를 검색하면 이제 및 만 x
일치합니다 .x
X
X
Man-db 에는 스위치 man
가 있지만 -I
이는 매뉴얼 페이지 검색에 작동합니다. 예를 들어 man BASH
기본적으로 bash 매뉴얼 페이지를 제공하지만 man -I BASH
그 반대는 아닙니다.
답변3
x
" 를 사용할 때 소문자만 강제로 일치시키나요 ?"x
man
이것은 한 가지 방법입니다
man -Tascii manpage |less
자세한 내용은 모르겠지만 roff
처리가 태그 지정을 수행하고 있으며 호출기는 태그가 지정된 텍스트를 표시하고 있음에도 태그가 지정되지 않은 텍스트와 일치하는 것 같습니다.
매우 혼란스럽습니다. nroff
전문가가 파이프라인을 설명할 수 있기를 바랍니다.