tar
아치 리눅스 매뉴얼 페이지SYNOPSIS
섹션은 다음으로 시작됩니다.
tar {A|c|d|r|t|u|x}[GnSkUWOmpsMBiajJzZhPlRvwo] [ARG...]
나는 이 경우 중괄호 안의 옵션 중 하나를 제공해야 한다는 것을 의미한다는 것을 완전히 이해합니다. 맨 페이지 아래에 그렇게 나와 있기 때문입니다.
{}
상호 배타적인 옵션 목록을 사용하기 위한 일종의 표준이나 규칙이 있습니까 ?
내가 찾을 수 있었던 것은사용자 그룹 튜토리얼man
1998년부터 다음과 같이 말합니다.
일부 옵션에는 선택 목록이 제한되어 있습니다. 선택 목록은 쉼표로 구분되며 중괄호 사이에 배치됩니다.
{1개 선택, 2개 선택} {예, 아니오}
모든 컨벤션(예:오픈그룹 출신이에요) 또는 매뉴얼 페이지에서는 대괄호( []
) 또는 세로 막대( |
)만 설명합니다.
답변1
좋은 질문입니다(몇 년이 지난 후에도 여전히 열려 있는 질문입니다). 내 생각엔 이제 답이 나온 것 같아공식적인여기에 대답하세요구글 문서:
- 필수항목 : 대괄호 없음
- 선택적 뮤텍스: 대괄호, 파이프 구분 기호
- 필수 뮤텍스: 중괄호, 파이프 구분 기호
답변2
상호 배타적인 옵션 목록에서 {}를 사용하기 위한 일종의 표준이나 규칙이 있나요?
귀하의 질문을 발견했을 때 저는 중괄호({})와 대괄호([])에 지정된 옵션의 의미가 얼마나 중요한지 조사하고 있었습니다. 이것이 내가 이해하려는 내용에 유용하다고 생각하는 유일한 정보 소스입니다. 이것이 바로 옵션이 중괄호로 선언되는 이유입니다.
당신이 쓴대로 :
이 경우에는 둘 중 하나를 제공해야 한다는 것을 완전히 이해합니다.
netstat의 매뉴얼 페이지를 읽은 후 이러한 옵션은 명령과 함께 사용할 수 있는 옵션이며 명령과 함께 나열될 수 있는 다른 옵션을 사용하기 전에 사용/선언해야 하며 나열된 옵션 중 하나만 OK 별도라는 것을 이해했습니다. 수직선으로.
위의 예는 netstat 명령의 매뉴얼 페이지에서 찾을 수 있습니다.
netstat {--route|-r} [address_family_options] [--extend|-e[--extend|-e]] [--verbose|-v] [--numeric|-n] [--numeric-hosts ][--디지털 포트][--디지털 포트] [--continuous|-c] [지연]
기본적으로 --route 또는 -r(동일한 의미를 가짐)을 사용할 수 있지만 해당 옵션은 나열된 다른 옵션 앞에 와야 합니다.
질문이 아직 열려 있는 것 같아서 시간을 내어 답변을 드렸는데, 직접 질문에 답변해 주신 것 같습니다 :)
컨벤션은 단순히 널리 확립된 관행입니다. 명시적으로 언급되었든 아니든, 이러한 형식의 man 문서를 자주 발견한다는 사실은 (위에서 올바르게 언급했다는 가정 하에) 규칙이 확고하게 확립되어 있음을 시사합니다.
"표준"이 있습니까? 나에게 그것은 당신이 채택하고 싶은 "표준"의 정의에 달려 있습니다. 나에게는 여기서 용어를 사용하는 의미에서 관습과 표준이라는 단어 사이의 의미 차이가 거의 없습니다. 그런 의미에서 이 두 단어는 “서로 합의하고, 사용하고, 규범으로 받아들인 것”을 의미한다고 생각합니다.
시간을 내어 이 규칙/표준을 이해하는 데 도움을 주셔서 감사합니다.