줄 바꿈을 사용하여 사람의 매개변수/플래그/옵션을 검색하는 방법은 무엇입니까?

줄 바꿈을 사용하여 사람의 매개변수/플래그/옵션을 검색하는 방법은 무엇입니까?

man줄바꿈은 일반적으로 다음과 같이 매개변수/플래그/옵션 섹션 에 포함됩니다.

-s
    silent

-s위의 예처럼 뒤에 개행 문자가 포함된 항목을 어떻게 찾을 수 있나요 ?

목적은 -s텍스트 블록 내부에서 발생하는 상황(즉, 뒤에 줄바꿈이 오지 않는 상황)을 방지하는 것입니다.

답변1

어떤 호출기를 사용하는지에 따라 다릅니다.

less호출기를 사용하는 경우 검색 문자열( /또는 를 입력할 때 ?)은 실제로 확장된 정규식( less특정 확장자를 포함)입니다.

정규식으로서, -s$줄 끝의 a 와 일치합니다 (또는 -s로 호출할 때 -S검색은 기본적으로 대소문자를 무시합니다 . 단, 검색 패턴에 대문자가 포함되어 있지 않으면 입력은 대소문자를 구분합니다). 일치하고 그 뒤에 0개 이상의 공백 문자가 오고 줄이 끝납니다.lessman-i-s[[:space:]]*$-s

호출기를 사용하면 most검색은 행 내용 내에서 발견되는 일반 문자열이므로 선택의 여지가 없습니다.

man환경 변수를 통해 형식화된 매뉴얼 페이지를 표시하는 데 사용할 페이저를 지정할 수 있습니다 $PAGER. from 을 구현하면 환경 변수 보다 우선하는 옵션을 사용하여 지정할 man-db수도 있습니다. 환경 변수 자체는 변수보다 우선합니다 .-P$MANPAGER$PAGER

기본적으로 사용되는 호출기는 시스템 및 man구현에 따라 다릅니다. 내 시스템(Debian)에서는 명령이 호출됩니다 ( manfromman-dbpagerdpkg 대안기본적으로는 less)이지만 일부 less특정 구성이 있습니다(많은 LESS*환경 변수를 설정함).

포맷된 출력을 직접 파이프 할 수도 있습니다 man some-topic | less. 또는 시작 시 패턴 검색을 시작합니다. 그러나 출력을 리디렉션하면 man-db를 사용하여 구현할 때 포맷이 비활성화됩니다.lessman some-topic | less '+/-s$'lessman

대신 less환경 변수를 사용하여 옵션 목록을 제공 할 수 있지만 여기에는 특별한 의미가 $LESS있으므로 $이스케이프해야 합니다.

LESS='--use-backslash +/-s\$' man -P less some-topic

관련 정보