Los argumentos son una de las mejores formas de crear parámetros para los programas durante la ejecución. Por ejemplo, cuando ejecuta el comando Go Run, también especifica el nombre del archivo que desea compilar. Aquí, la ejecución y el nombre del archivo son argumentos de línea de comandos que le dicen al compilador GO qué hacer.
Esta guía lo guiará a través de la creación de argumentos para sus programas Go.
Paquete de OS de Golang
Para usar los argumentos de línea de comandos en nuestro programa, necesitamos importar el paquete del sistema operativo. Este paquete contiene OS.Variable args que contiene argumentos de línea de comandos
Esta variable es una variedad de cadenas y realiza un seguimiento de los argumentos pasados al programa. Tenga en cuenta que el primer argumento es en realidad el nombre del programa.
Por ejemplo:
paquete principalEn el ejemplo anterior, usamos el sistema operativo.Array de argumentos para recuperar el primer argumento (índice 0). Dado que el primer argumento es el nombre del programa basado en el compilador GO, la salida resultante es la ruta completa al ejecutable del programa.
$ Go Run OS_ARGS.irGolang obtiene el número de argumentos
Podemos pasar el número de argumentos a un programa utilizando la función Len (). Desde el sistema operativo.Args es simplemente una matriz, la función LEN devolverá el número de elementos en la matriz.
Un programa de ejemplo es como se muestra a continuación:
empacadorSi ejecutamos el código anterior con una serie de argumentos de línea de comandos:
$ Go Run OS_ARGS.Ve primero, segundo, terceroDeberíamos obtener el número total de argumentos al programa
Longitud del argumento: 3Nota: Dado que sabemos que el primer argumento es el nombre del programa, usamos la cortación de matriz para eliminar el primer elemento y tomar todos los demás argumentos después del índice 0.
Banderas de línea de comandos de Golang
Podemos definir nuestras propias banderas personalizadas usando el paquete de banderas. Un ejemplo de un indicador de línea de comandos sería -h, -l u otro.
Por ejemplo, MySQL CMD Utility le permite especificar el nombre de usuario y la contraseña utilizando el comando:
mysql -u raíz -pImplementemos un programa simple que funcione como un mensaje de inicio de sesión.
paquete principalEl programa simple anterior utiliza el indicador -u y -p para verificar si el nombre de usuario y la contraseña proporcionados coinciden. Si es correcto, mostramos un mensaje "mysql" y de lo contrario, devuelve un mensaje.
Una vez que construimos el programa:
ir a construir cmd_flag.irPodemos ejecutar con los argumentos como
./cmd_flags.exe -u root -p mysqlEsto debería devolver el mensaje en el bloque if como se muestra:
ps ./banderas.exe -u root -p mysqlDe lo contrario, el comando debe devolver el mensaje en el bloque de lose.
Conclusión
En este artículo, cubrimos los conceptos básicos de trabajar los argumentos de la línea de comandos utilizando el paquete del sistema operativo. También cubrimos cómo usar banderas de línea de comandos del paquete de banderas.
Gracias por leer!!