Padrões de uso POSIX para requerer pelo menos um argumento opcional

4

Então, estou escrevendo uma CLI para uma API e cheguei a um ponto em que um dos comandos support tem dois argumentos opcionais, id e fields

Eu quero saber como mostrar que esses argumentos são opcionais, MAS, você tem que fornecer pelo menos um deles, ou ambos. Não sei como traduzir a pesquisa do Google, então não consegui transformar nada. Meu melhor palpite é algo como Usage: support [id=...]||[fields=...] , mas eu gostaria de saber o padrão.

    
por Christopher Wirt 29.05.2014 / 17:40

1 resposta

2

POSIX não tem nada a dizer sobre como documentar comandos, nem qualquer padrão que eu conheça.

Uma convenção comum é listar duas linhas de comando separadas, uma com id , uma com fields .

support id=… [OPTION…]
support fields=… [OPTION…]

Como alternativa, você pode usar {id|fields} para indicar que pode ser especificado (mas não ambos). Isso é útil quando o restante da linha de comando é o mesmo, para evitar repetir o restante. Por outro lado, é um pouco menos legível.

support {id=NAME|fields=FIELD1,FIELD2} [OPTION]…

Exemplo: a página cpio man em FreeBSD , Solaris , Linux use linhas diferentes para o modos diferentes (indicados pela escolha entre -i , -o e -p ). Então, o POSIX . A man page do Linux usa {-i|--extract} para indicar que -i ou --extract pode ser usado; Eu acho o uso de chaves sem alternativas na página de manual do FreeBSD estranha.

    
por 30.05.2014 / 03:20