대부분의 매뉴얼 페이지에 몇 가지 일반적인 예가 포함되어 있지 않은 이유가 있습니까? 일반적으로 가능한 모든 옵션을 설명하지만 이로 인해 초보자가 "일반적으로" 작동하는 방식을 이해하기가 더 어려워집니다.
답변1
매뉴얼 페이지에 따라 다릅니다. 전통적으로 그들은가지다예제가 포함된 섹션이 포함되어 있습니다. 그러나 어떤 이유로 Linux의 매뉴얼 페이지에는 해당 섹션이 없는 경우가 많습니다. (다른 명령은 현재 대부분 GNU 명령을 사용한다고 가정합니다.) 반면, 예를 들어 Solaris에서는 거의 모든 매뉴얼 페이지에 "예제" 섹션이 포함되어 있으며 종종 여러 예가 포함되어 있습니다.
추측하자면, FSF/GNU는 오랫동안 man
페이지 사용을 억제해 왔으며 사용자가 정보를 문서로 사용하는 것을 선호했습니다. info
페이지는 매뉴얼 페이지보다 더 포괄적인 경향이 있으며 일반적으로하다예시를 포함하세요. info
페이지는 또한 더 "주제적"입니다. 즉, 관련 명령(예: 파일을 찾는 데 사용되는 명령)을 함께 찾을 수 있는 경우가 많습니다.
또 다른 이유는 GNU와 해당 페이지가 서로 다를 수 있는 다양한 운영 체제에서 사용되기 때문일 수 있습니다 man
(결국 Linux 배포판 간에는 많은 차이점이 있습니다). 게시자의 의도는 아마도 특정 운영 체제/배포판과 관련된 예제를 추가하는 것이었지만 이는 거의 수행되지 않는 것 같습니다.
man
또한 이 페이지는 "초보자를 가르치기" 위한 것이 결코 아니라는 점을 덧붙이고 싶습니다 . UNIX는 컴퓨터 전문가(이전 용어 "해커")가 컴퓨터 전문가가 사용할 수 있도록 개발되었습니다. 따라서 매뉴얼 페이지는 초보자를 가르치기 위한 것이 아니라 모호한 옵션이나 이상한 파일 형식을 상기시켜야 하는 컴퓨터 전문가에게 신속하게 도움을 주기 위한 것입니다. 이는 매뉴얼 페이지를 나누는 방식에 반영됩니다.
man
-페이지는 따라서 다음과 같이 의도됩니다.
- 기억을 새로 고치기 위한 빠른 참조는 명령 호출 방법을 보여주고 사용 가능한 옵션을 나열합니다.
- 심층적이고 철저한(종종 매우 기술적) 설명모두명령의 모든 측면. 컴퓨터 전문가가 다른 컴퓨터 전문가를 위해 작성했습니다.
- 명령에 사용되는 환경 변수 및 파일(예: 구성 파일) 목록입니다.
- 다른 문서(예: 책) 및 다른
man
페이지에 대한 참조 - 예: 구성 파일 및 관련/유사 명령의 형식입니다.
즉, man
매뉴얼 페이지 자체를 살펴보는 것보다 사용법을 더 잘 설명하기 때문에 페이지에 예제가 있어야 한다는 점에 나는 전적으로 동의합니다. 안타깝게도 man
일반적으로 Linux 페이지에는 예제가 없습니다...
Solaris 매뉴얼 페이지 예제 섹션의 예 - zfs(1M):
(...) 예 예제 1 ZFS 파일 시스템 계층 구조 만들기 다음 명령은 pool/home이라는 파일 시스템을 생성합니다. 그리고 pool/home/bob이라는 파일 시스템이 있습니다. 마운트 포인트 /export/home은 상위 파일 시스템으로 설정되며 하위 파일 시스템에서 자동으로 상속됩니다. # zfs는 풀/홈을 생성합니다. # zfs set mountpoint=/export/home 풀/홈 # zfs는 /home/bob 풀을 생성합니다. 예 2 ZFS 스냅샷 만들기 다음 명령은 어제라는 이름의 스냅샷을 생성합니다. 이 스냅샷은 요청 시 .zfs/snapshot에 설치됩니다. pool/home/bob 파일 시스템 루트 디렉터리. # zfs 스냅 풀 /home/bob@yesterday 예시 3 여러 스냅샷 생성 및 삭제 다음 명령은 어제라는 스냅샷을 생성합니다. pool/home 및 모든 하위 파일 시스템. 각 스냅샷은 요청 시 .zfs/snapshot 디렉토리에 마운트됩니다. 파일 시스템의 루트에 있습니다. 두 번째 명령은 파괴하라는 것이다. 새로 생성된 스냅샷입니다. # zfs snapshot -r pool/home@yesterday # zfs destroy -r pool/home@yesterday SunOS 5.11 마지막 변경일: 2012년 7월 23일 51 시스템 관리 명령 zfs(1M) 예제 4 파일 시스템 압축 비활성화 및 활성화 다음 명령은 압축 속성을 비활성화합니다. (...)
이 특정 매뉴얼 페이지에는 이러한 예제 중 16(!) 개가 포함되어 있습니다... Solaris에 찬사를 보냅니다!
(나는 이 명령에 대한 전체 매뉴얼 페이지를 읽기보다는 이 예제를 직접 따랐다는 것을 인정합니다...)
답변2
나는 이 질문에 대한 좋은 대답이 없다고 생각합니다. 이것은 문화적 문제입니다. 일부 매뉴얼 페이지에는 사용법 예가 있습니다. 예를 들어 man rsync
. 매뉴얼 페이지 작성자에게 편지를 쓰고 몇 가지 예제 사용법을 추가하도록 요청하거나 (더 나은 경우) 직접 제공함으로써 문화를 바꾸려고 할 수 있습니다. 무료 소프트웨어 작성자에게 패치, 특히 문서 패치를 제공하는 경우 원하는 결과를 얻을 가능성은 단순한 요청보다 약 10,000배 더 높습니다.
답변3
때에 따라 다르지:
관심 있는 대부분의 프로그램은 처음에는 문제를 해결하고 나중에는 솔루션을 개선하기 위해 일정 기간에 걸쳐 개발되었습니다. 프로그램 개발자는 알아야 할 중요하다고 생각되는 사항을 설명합니다.문서해결해야 할 문제는 아닙니다.)
일부 프로그램의 경우 개발자는 예제 제공을 선호합니다.프로그램또는스크립트주어진 프로그램(또는 라이브러리)을 사용하는 방법을 보여줍니다. 다시 말하지만, 이는 문제를 해결하기 위해 수행됩니다. 즉, 프로그램을 더 쉽게 테스트할 수 있도록 만드는 것입니다.
일부 예는 사용자 버그 보고서를 기반으로 할 수 있으며,짧은설명서에서 위치를 찾으세요. 긴 예제는 매뉴얼에서 거의 제공되지 않으며 짧은 예제의 문제점은 사소하고 반복적인 경향이 있으며 실제로 프로그램 작동 방식에 대한 잘 구성된 설명만큼 사용자에게 많은 통찰력을 제공하지 않는다는 것입니다.
어떤 경우에는 다른 사람이 제공한 문서를 찾을 수 있습니다.아니요개발 과정에 참여하세요. 즉, 개발자는 문서를 검토하는 것 외에는 관여하지 않습니다. 이 노력은 미미합니다.
답변4
매뉴얼 페이지에 대한 대안을 찾고 있다면 언제든지 시도해 볼 수 있습니다.브라더스 페이지, 이는 단순히 명령의 다양한 예를 표시하며, 커뮤니티에서 제출한 예 목록에서 투표할 수 있습니다. 예를 들어, 이 명령은 bro tar
다음을 제공합니다.