Есть ли какой-то стандарт или соглашение об использовании {} вокруг списка взаимоисключающих опций?
Я исследовал значение значения опций, указанных в фигурных скобках ({}), против опций, указанных в квадратных скобках ([]), когда натолкнулся на ваш вопрос. Это был единственный источник информации, который я нашел полезным в отношении того, что я пытался понять, а именно, почему варианты указаны в фигурных скобках.
Как вы написали:
Я прекрасно понимаю, что в этой ситуации это означает, что именно один из них должен быть дан ...
Читая справочную страницу для netstat, я пришел к выводу, что параметры - это те параметры, которые доступны для использования с командой, которые должны использоваться / указываться перед использованием любых других параметров, которые могут быть перечислены с помощью команды И точно только один из перечисленных параметров разделенные вертикальной чертой могут быть использованы.
Пример вышесказанного можно найти на странице man для команды netstat:
netstat {--route | -r} [address_family_options] [--extend | -e [- extend | -e]] [--verbose | -v] [--numeric | -n] [--numeric-hosts ] [- числовые порты] [- числовые порты] [--continuous | -c] [задержка]
Источник: netstat (8) | Страница руководства по Linux
По сути, можно использовать ровно одно из --route или -r (они означают одно и то же), но этот параметр должен предшествовать другим перечисленным параметрам.
Я только нашел время ответить на ваш вопрос, потому что вопрос, кажется, остается открытым, но мне кажется, что вы ответили на свой вопрос :)
Конвенция - это просто широко распространенная практика. Независимо от того, указано это явно или нет, тот факт, что вы регулярно находите документы man в этом формате, указывает на то, что соглашение (при условии, что я правильно изложил это выше) твердо установлено.
Есть ли «стандарт»? Для меня это зависит от того, какое определение вы хотите принять для «стандарта». Для меня практически нет различия между значением слова «конвенция» и «стандарт» в том смысле, что мы используем здесь термин. В этом смысле я считаю, что эти два слова означают что-то вроде «того, что взаимно согласовано, используется и принимается как норма».
Спасибо за ваше время, помогая мне понять эту конвенцию / стандарт.
<>
это обязательным, но я полагаю, что это зарезервировано для аргументов, а не вариантов. Счетчик: версия man- страницы GNU tar для Ubuntu ( например , manpages.ubuntu.com/manpages/trusty/en/man1/tar.1.html ) не использует эту форму, как и linux.die.net/man/ 1 / tar или Debian . Я думаю, что вы, возможно, просматриваете справочную страницу BSD tar, поэтому, если существует соглашение, это может быть вещь BSD.