A menudo veo un solo guión -
o un guión doble --
seguido de comandos de Linux u otros programas de Linux instalados.
¿Cuáles son las diferencias entre guiones simples y guiones dobles?
¿Se trata solo de abreviatura? Por ejemplo, -v
significa la --verbose
mayor parte del tiempo.
command-line
Peng Zhang
fuente
fuente
Respuestas:
Es una cuestión de convención. Los programas estándar POSIX generalmente solo tienen opciones de un solo carácter, y todos tienen el prefijo de un solo guión. Las versiones más largas son una mejora de GNU para mayor claridad, por lo que puedo decir, y generalmente tienen el prefijo de guiones dobles. Puede ver esto en las bibliotecas y programas utilizados para analizar las opciones,
getopt
ygnu-getopt
respectivamente. Los programas que no son GNU y que no cumplen con POSIX pueden hacer algo completamente diferente. Tenga en cuenta que realmente no puede estar seguro de que la forma larga de un argumento puede ser la misma de un programa a otro.-f
generalmente significa--force
, pero no conapt-get install
(error común).-v
puede significar versión, generalmente, o--verbose
, etc. Consulte las páginas de manual u otra documentación para estar seguro. También eche un vistazo a laArtículo de Wikipedia sobre getopt . Todo esto es anterior a Linux en una década o más.dd
es un ejemplo de una utilidad estándar POSIX que no tiene opciones con guiones en absoluto .find
es el ejemplo clásico de una utilidad estándar POSIX que tiene opciones de palabras con guiones simples: casi todasfind
las opciones tienen varios caracteres de longitud.ps
admite múltiples estilos de opciones:GNU
tar
también admite múltiples estilos de opciones.Como cuestión de uso, prefiera las opciones largas en los scripts si puede estar seguro de que los scripts se ejecutarán en entornos compatibles; la mejora en la claridad es una bendición al depurar. Para la portabilidad, se prefieren las opciones cortas.
fuente
Por lo general, las opciones se pueden encadenar juntas, como
pacman -Syu
ser equivalente apacman -S -y -u
, y las opciones generalmente toman un parámetro como en./configure --prefix=/usr
fuente