¿De dónde viene la convención de usar guiones simples para las letras y guiones dobles para las palabras y por qué se sigue usando?
Por ejemplo, si escribo ls --help
, ves:
-a, --all do not ignore entries starting with .
-A, --almost-all do not list implied . and ..
--author with -l, print the author of each file
-b, --escape print octal escapes for nongraphic characters
--block-size=SIZE use SIZE-byte blocks
-B, --ignore-backups do not list implied entries ending with ~
...
Intenté buscar en Google - and -- convention
incluso con comillas con poco éxito.
Respuesta aceptada:
En El arte de la programación de Unix, Eric Steven Raymond describe cómo evolucionó esta práctica:
En la tradición original de Unix, las opciones de la línea de comandos son letras individuales precedidas por un solo guión... El estilo original de Unix evolucionó en los lentos teletipos ASR-33 que hicieron de la brevedad una virtud; por lo tanto, las opciones de una sola letra. Mantener presionada la tecla de mayúsculas requería un esfuerzo real; por lo tanto, la preferencia por las minúsculas y el uso de "-" (en lugar del quizás más lógico "+") para habilitar las opciones.
El estilo GNU utiliza palabras clave de opción (en lugar de letras de palabras clave) precedidas por dos guiones. Evolucionó años más tarde, cuando algunas de las utilidades bastante elaboradas de GNU comenzaron a quedarse sin claves de opción de una sola letra (esto constituyó un parche para el síntoma, no una cura para la enfermedad subyacente ). Sigue siendo popular porque las opciones de GNU son más fáciles de leer que la sopa de letras de estilos más antiguos.
[1] http://www.catb.org/esr/writings/taoup/html/ch10s05.html