2 puntos por xguru 2025-03-26 | 1 comentarios | Compartir por WhatsApp
  • Analizador de argumentos de línea de comandos que sigue el estándar GNU, como ./test -vo out.png --size 256 input.txt
  • Proporciona mensajes de ayuda integrados con -h y --help
  • Mapea argumentos a campos de structs mediante configuración por etiquetas
  • Soporta campos de tipos compuestos como arreglos, slices y structs
  • Soporta subcomandos anidados

Reglas de argumentos de línea de comandos de GNU

  • Los elementos que comienzan con guion (-) son opciones
  • Se pueden combinar varias opciones (-abc es igual a -a -b -c)
  • Las opciones largas comienzan con dos guiones (--abc)
  • Los nombres de las opciones solo pueden ser alfanuméricos
  • Los valores de las opciones pueden establecerse con espacio, signo igual (=) o como valor contiguo (-a1, -a=1, -a 1 son equivalentes)
  • No hay problema si se mezclan opciones y valores no opcionales
  • Las opciones pueden aparecer en cualquier orden.
  • -- indica el fin de las opciones y todos los argumentos posteriores se tratan como no opcionales
  • Un solo - normalmente significa entrada o salida estándar
  • Si la misma opción se especifica varias veces, se aplica el último valor
  • Una opción puede tener múltiples valores (-a 1 2 3 se procesa como [1,2,3])

Funcionalidades adicionales

  • Conteo de opciones: -vvv establece v = 3
  • Acumulación de opciones: -v 1 -v 2 establece v = []int{1, 2}
  • Opciones booleanas: --var activa y --no-var desactiva
  • Las opciones pueden ser tipos compuestos como structs, slices y maps
  • Las opciones pueden obtener valores de lista/diccionario desde una fuente (por ejemplo, SQL)

1 comentarios

 
haung921209 2025-03-26

Había usado cobra, pero en comparación argp ofrece varias opciones para las flags jaja