La página de manual para tar en la sección SINOPSIS de Arch Linux comienza con:
tar {A|c|d|r|t|u|x}[GnSkUWOmpsMBiajJzZhPlRvwo] [ARG...]
Entiendo perfectamente que en esta situación significa que se debe dar exactamente una de las opciones en las llaves porque se dice más abajo en la página del manual. ¿Existe algún tipo de estándar o convención sobre el uso de {} en torno a una lista de opciones mutuamente excluyentes?
Todo lo que puedo encontrar es un tutorial grupal del usuarioman
de 1998 donde dice:
Algunas opciones tendrán una lista limitada de opciones. Una lista de opciones estará separada por comas y puesta entre llaves.
{opción1, opción2} {sí, no}
Parece que cada convención (como esta del Grupo abierto ) o la página del manual describe solo corchetes ([) o líneas verticales (|).
command-line
man
conventions
umbasa
fuente
fuente
<>
que es obligatorio, pero supongo que está reservado para los argumentos en lugar de las opciones. Contador: la versión de Ubuntu de la página de manual de GNU tar ( manpages.ubuntu.com/manpages/trusty/en/man1/tar.1.html , por ejemplo ) no usa este formulario, ni linux.die.net/man/ 1 / tar o Debian . Creo que podría estar viendo la página de manual de BSD tar, por lo que si existe una convención, podría ser algo de BSD.Respuestas:
Esta es una gran pregunta (y aún está abierta 3 años después). Creo que la respuesta ahora se responde oficialmente en este documento de Google :
fuente
Estaba investigando la importancia del significado de las opciones que se especifican entre llaves ({}) frente a las opciones especificadas entre corchetes ([]) cuando me encontré con su pregunta. Fue la única fuente de información que encontré útil con respecto a lo que estaba tratando de entender, a saber, por qué las opciones se indican entre llaves.
Como escribiste:
Al leer la página de manual de netstat, llegué a la conclusión de que las opciones eran aquellas opciones disponibles para usar con un comando que debe usarse / establecerse antes de usar cualquier otra opción que pueda aparecer en la lista con el comando Y exactamente solo una de las opciones enumeradas separados por la barra vertical se puede utilizar.
Un ejemplo de lo anterior se puede encontrar en la página del manual para el comando netstat:
Fuente: netstat (8) | Página de manual de Linux
En esencia, uno puede usar exactamente uno de --route o -r (significan lo mismo) pero la opción debe preceder a las otras opciones enumeradas.
Solo me tomé el tiempo para responder a su pregunta porque la pregunta parece estar abierta, pero me parece que respondió su propia pregunta :)
Una convención es simplemente una práctica ampliamente establecida. Ya sea que se indique explícitamente o no, el hecho de que encuentre los documentos man regularmente en este formato indica que la convención (suponiendo que lo dije correctamente anteriormente) está firmemente establecida.
¿Hay un "estándar"? Para mí, eso depende de qué definición quieras adoptar para "estándar". Para mí, hay poca o ninguna distinción entre el significado de las palabras convención y estándar, en el sentido de que estamos usando el término aquí. En este sentido, considero que las dos palabras significan algo similar a "algo que se acuerda mutuamente, se usa y acepta como norma".
Gracias por su tiempo en ayudarme a comprender esta convención / estándar.
fuente