나는 최근 Linux 도구에 대한 워크숍을 열었고 학생들에게 오류가 발생하면 명령의 매뉴얼 페이지를 참조하라고 말했습니다.
그러나 명령 자체는 man
명령에 대한 매뉴얼 페이지를 보기 위한 메시지를 반환하지 않는다는 것을 알았습니다.
대부분의 명령은 옵션 사용 --help
, 페이지 사용 info
, 지침 사용 또는 오류 메시지 인쇄를 제안합니다.
사용자에게 매뉴얼 페이지를 참조하도록 요청하는 명령이 없는 이유가 무엇인지 궁금합니다. 잘못 사용되었을 때 가장 먼저 살펴보아야 할 곳이 바로 그곳이 아닌가?
답변1
거기예이에 대한 객관적인 이유가 있습니다.
--help
유틸리티 자체(바이너리 실행 파일 또는 스크립트인 경우 스크립트)에 내장된 플래그입니다.
매뉴얼 페이지는 실행 파일 자체와 별도로 파일 시스템에 저장됩니다.
매뉴얼 페이지가 누락되었을 수 있지만 실행 파일 자체에는 계속 액세스할 수 있습니다.
유틸리티 개발자로서 사용자에게 문서 리소스 안내예 혹은 아니오코드 자체에 정보를 포함시키는 것보다 시스템에 존재하는 것이 더 합리적입니다.
그뿐만 아니라실행 파일 버전과 매뉴얼 페이지 버전은 일치할 수도 있고 일치하지 않을 수도 있습니다.
예를 들어 특정 버전의 Postgres가 특정 패키지와 함께 제공되면 다른 버전의 Postgres도 시스템에 설치되는 상황에 직면했습니다. man psql
정보가 표시됩니다하나버전이지만 실제로 실행하여 얻는 버전은 아닙니다 psql
. 플래그가 없으면 --help
매뉴얼 페이지에 따라 특정 옵션이 작동하지 않는 이유가 혼란스러울 것입니다.
답변2
오류 메시지의 제안 사항이 렌더링되는 방식에 대한 통계가 없을 수 있으므로 의견에 따라 다릅니다.
내가 본 주요 연결은 사용법 메시지(아마도 한 줄 이상)를 인쇄하는 것입니다. 아마도 누군가에게 매뉴얼 페이지를 읽으라고 말할 필요가 없기 때문일 것입니다. 누군가에게 메시지를 읽으라고 말하는 것은 --help
중복되며, 정보 페이지를 읽는 것은 그 중 일부만 권장됩니다.
내가 개발하는 모든 프로그램은 사용 메시지(보통 여러 줄)를 제공합니다.