나는 패키징 중인 프로그램에 대한 매뉴얼 페이지를 작성하고 있습니다. 내가 만든 맨페이지 파일을 표시하여 올바른지 확인하려면 어떻게 해야 합니까? man
설치된 매뉴얼 페이지를 이름으로 검색하는 대신 내 파일을 명령 에 직접 전달할 수 있는 방법이 있습니까 ?
나는 man myprog.1
다음과 같은 작업을 시도했지만 man < myprog.1
두 경우 모두 매뉴얼 페이지를 찾을 수 없다는 오류가 발생했습니다.
답변1
man
로컬 파일을 읽는 옵션이 있습니다:-l
-l, --local-file
"로컬" 모드를 활성화합니다. 시스템의 매뉴얼 컬렉션을 검색하지 않고 로컬 매뉴얼 파일의 형식을 지정하고 표시합니다. 각 매뉴얼 페이지 인수는 올바른 형식의 nroff 소스 파일로 해석됩니다. Cat 파일은 생성되지 않습니다.
"-"가 인수 중 하나로 나열되면 표준 입력에서 입력을 가져옵니다. 이 옵션을 사용하지 않고 필요한 페이지를 찾을 수 없는 경우 오류 메시지를 표시하기 전에 이름을 파일 이름으로 사용하고 정확히 일치하는 항목을 찾아 이 옵션이 제공된 것처럼 작동하려고 시도합니다.
따라서 다음을 통해 진행 중인 작업을 미리 볼 수 있습니다.
man -l /path/to/manfile.1
답변2
이 옵션 이전 시스템의 경우 -l
"기존" 방식은 다음과 같습니다.
nroff -man filename | more -s
답변3
나는 단순히 사용했다
man ./path/to/man.1
경로에 슬래시를 포함해야 합니다. 그렇지 않으면 시스템 디렉터리를 검색합니다. 내가 가지고 있는 Linux와 OS X 시스템 모두에서 작동합니다(후자는 아님 -l
).
$ cd /tmp
$ cp /usr/share/man/man1/ls.1 .
$ man ls.1
No manual entry for ls.1
$ man ./ls.1 # works
답변4
Solaris에서는 맨페이지를 재정의하는 검색 경로 -M
로 전환합니다 . -man
man -M path/to/man myprog
맨페이지 파일은 섹션 및 마크업 언어에 해당하는 적절한 하위 디렉터리에 있어야 합니다(예: path/to/man/man1/myprog.1
Part 1의 nroff-manpage).