유닉스 맨 페이지에서 특정 플래그로 이동하는 방법은 무엇입니까?


23

터미널에서 유닉스 맨 페이지를 읽을 때 특정 플래그에 대한 설명으로 쉽게 이동할 수 있습니까?

예를 들어에 대한 -o플래그 의 의미를 알아야합니다 mount. 나는 달리고 설명 된 man mount곳으로 점프하고 싶습니다 -o. 현재 검색 /-o하지만 실제로 해당 옵션을 설명하는 섹션 앞의 여러 곳에서 해당 옵션을 언급하므로 상당히 뛰어 넘어야합니다.

감사.

답변:


27

내가하는 일은 깃발 앞에 몇 개의 공백을 두는 것입니다.

/     -o

그것은 100 % 신뢰할 수는 없지만 훨씬 적은 농구 대를 뛰어 넘습니다. 더 나은 성공률을 원하면를 사용해보십시오 "/^ +-o". 그러면 공백으로 시작하고 그 뒤에 -o가 오는 행을 찾을 수 있습니다. 그래도 이상한 문자열을 자주 입력하고 싶지 않습니다.


11

내 에서이 기능을 정의했습니다. .bashrc

function manswitch () { man $1 | less -p "^ +$2"; }

다음과 같이 사용할 수 있습니다

manswitch grep -r

이 commandlinefu 에서 얻었습니다 .

참고 : -p스위치에 대한 인수 less는 ( ^) 하나 이상의 공백 ( +)으로 시작하고 스위치 (두 번째 arg. so $2)로 시작하는 줄을 찾지 말라고하는 정규 표현식 이므로 다른 형식으로 작업 할 수 있다는 이점이 있습니다.


5

또한 명령 줄에서 특정 위치의 매뉴얼 페이지를 열 수 있습니다.

man -P 'less -p "     -o"' mount

가능하다고 찬성했지만 사람 안에서 검색하는 것보다 타이핑하는 것이 훨씬 더 큽니다. 그래도 고마워!
dotancohen 2016 년

즉 : 맨 페이지에서 정확한 장소에 사람을 보내 매우 유용
러시

그렇습니다. 어떤 이유로 스크립트에서 맨 페이지를 열면 유용 할 것이라고 생각했습니다. 고맙습니다!
dotancohen 2016 년

3

@piccobello의 대답은 훌륭하지만 내 맨 페이지의 색상을 먹고있었습니다. 파이핑 대신 less( 기본적으로 man이미 less기본적으로 사용 되므로 ) 수정 된 less명령을 man다음으로 전달합니다 .

function manswitch() { man -P "less -p \"^ +$2\"" $1 }

이것은 @piccobello가 자신의 기능에 가지고 있던 기능은 유지하지만 색상은 유지합니다.


1

다른 솔루션은 상당히 훌륭하지만 매뉴얼 페이지는 데이터 일 뿐이며 Linux에서 거의 모든 작업을 쉽게 수행 할 수 있습니다.

man some-command> file.txt

페이지를 조작 할 수있는 일반 텍스트 파일로 변환합니다. 나는 bash 매뉴얼의 사본을 bin 디렉토리에 텍스트로 유지하므로 텍스트 편집기에로드하여 스크립트를 편집하는 동안 사물을 검색하고 복사하여 붙여 넣을 수 있습니다.

또는 다음과 같은 필터에 파이프로 연결할 수 있습니다

남자 일부 명령 | grep- "일부 패턴"다음 줄

터미널에서 작동하지는 않지만 (친구의 도움으로) 맨 페이지를 잡고 웹 브라우저에 표시하는 스크립트를 작성하여 더 나은 탐색 / 검색 기능을 사용할 수 있습니다 보다 적습니다. 약간 kde에 의존하지만 수정하기 쉽습니다.

http://dl.dropbox.com/u/54584985/kman


3
man://Konqueror 에서 시도해 볼 수 있습니다 . KDE에는 KIOSLAVE 맨 페이지가 있습니다!
dotancohen

@dotancohen-멋지다. 그것에 대해 몰랐습니다.
Joe

@dotancohen-방금 돌고래에서 시도했지만 작동하지만 매뉴얼 페이지를 디렉토리와 파일로 표시하고 파일을 클릭하면 기본 브라우저가 시작됩니다. KIOSLAVE에 대한 부분을 이해하지 못합니다. 나는 man : // kioslave를 시도했으며 man : //와 동일했습니다.
Joe

@dotancohen-신경 쓰지 마십시오-위키 백과에서 키오 슬라브를 찾았습니다. en.wikipedia.org/wiki/KIO
Joe

예, KDE는 거의 모든 것을 갖추고 있습니다. 즐겨!
dotancohen

1

나는 flagman 이라고하는 도구를 썼습니다 . 아직 개발 중이지만 이미 사용할 수 있습니다. 예를 들면 다음과 같습니다.

$ ./flagman mount -o
       -o, --options opts
              Use the specified mount options.  The opts argument is a comma-separated list.  For example:

                     mount LABEL=mydisk -o noatime,nodev,nosuid


              For more details, see the FILESYSTEM-INDEPENDENT MOUNT OPTIONS and FILESYSTEM-SPECIFIC MOUNT OPTIONS sections.
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.