La mayoría de los comandos unixoides presentan alternativas cortas y largas para las opciones de línea de comandos, como ls -ay ls --all, o ls -Ay ls --almost-all. ¿Por qué existen esas dos formas? Uno es más corto de escribir, el otro es más fácil de leer y entender. Pero cada vez que escribo un script de shell, necesito decidir cuál quiero usar. ¿Se sabe por qué existen las dos alternativas? Cuál fue primero, por qué se presentó el otro. En DOS / Windows, por ejemplo, hay casi solo opciones de una letra que no distinguen entre mayúsculas y minúsculas.
21

ls -BartSimpsonIsJustCool(oGreatsi está en Solaris.Isigue es el argumento de la-Iopción, por lo que solo hace una diferencia si tiene un archivo llamadosJustCoolen el directorio actual. La-BartSimpsonparte se puede reordenar, excepto que elS(ordenar por tamaño) debe permanecer después delt(ordenar por fecha). Tampocomtiene efecto cuandonooestán presentes. Entonces, el comando es equivalente als -BSainopsr, y si no me he perdido nada, no puede eliminar otra letra para lograr el mismo resultado y puede reordenar estas letras libremente.gzip -9 filenamepor ejemplo.Podrías adivinar que es cuestión de gustos. Al escribir en la línea de comando, puede preferirse una opción corta, especialmente en el caso de las opciones de ejecución conjunta (por ejemplo
ls -AL). Las opciones largas son mejores para transmitir la intención, por lo que no necesita consultar la página de manual cuando leals --almost-all --dereference.Naturalmente, a medida que adquiera experiencia, puede comprobar que las dos
-Ay-Lcortos opciones son suficientemente conocidos, y no requieren de esta documentación adicional. Especialmente en un comando complejo que puede combinar varios comandos de manera interesante con evaluación, redirección, etc. En tal caso, puede preferir la brevedad sobre la documentación.fuente
Otro propósito que puedo ver al tener diferentes formas de especificar parámetros (cortos y largos) es que al escribir, a la gente de la línea de comandos de Unix / Linux le gusta tener los comandos más cortos posibles. Sin embargo, esos pueden volverse crípticos, y si un guión se escribe usando esas versiones cortas, pueden volverse difíciles de entender en el futuro. El uso de la versión larga puede hacer que el mismo comando sea más legible y entendible por alguien que no sea el gurú de este comando, especialmente si este comando es en realidad un script escrito localmente en lugar de un comando conocido.
fuente