Os argumentos são uma das melhores maneiras de criar parâmetros para programas durante a execução. Por exemplo, quando você executa o comando go run, você também especifica o nome do arquivo que deseja compilar. Aqui, a corrida e o nome do arquivo são argumentos de linha de comando que dizem ao compilador o que.
Este guia irá orientá -lo na criação de argumentos para seus programas GO.
Pacote OS do Golang
Para usar argumentos de linha de comando em nosso programa, precisamos importar o pacote do sistema operacional. Este pacote contém sistema operacional.Variável args que mantém argumentos de linha de comando
Esta variável é uma variedade de cordas e mantém o controle dos argumentos passados para o programa. Lembre -se de que o primeiro argumento é realmente o nome do programa.
Por exemplo:
Pacote principalNo exemplo acima, usamos o sistema operacional.Args Array para recuperar o primeiro argumento (índice 0). Como o primeiro argumento é o nome do programa baseado no compilador Go, a saída resultante é o caminho completo para o executável do programa.
$ go run Os_args.irGolang recebe número de argumentos
Podemos realizar o número de argumentos para um programa usando a função len (). Desde o sistema operacional.Args é simplesmente uma matriz, a função len retornará o número de elementos na matriz.
Um programa de exemplo é como mostrado abaixo:
PackageMainSe executarmos o código acima com vários argumentos da linha de comando:
$ go run Os_args.vá primeiro, segundo, terceiroDevemos realizar o número total de argumentos para o programa
Comprimento do argumento: 3NOTA: Como sabemos que o primeiro argumento é o nome do programa, usamos o corte de matriz para remover o primeiro elemento e pegar todos os outros argumentos após o índice 0.
Sinalizadores de linha de comando de Golang
Podemos definir nossos próprios sinalizadores personalizados usando o pacote de sinalizadores. Um exemplo de uma bandeira de linha de comando seria -h, -l ou outro.
Por exemplo, o utilitário MySQL CMD permite especificar o nome de usuário e a senha usando o comando:
Mysql -u Root -pVamos implementar um programa simples que funcione como um prompt de login.
Pacote principalO programa simples acima usa o sinalizador -u e -p para verificar se o nome de usuário e a senha fornecidos correspondem. Se correto, exibimos um prompt "mysql" e de outra forma, retorne uma mensagem.
Uma vez que construímos o programa:
Vá construir CMD_FLAG.irPodemos correr com os argumentos como
./cmd_flags.exe -u root -p mysqlIsso deve retornar a mensagem no bloco if como mostrado:
$ ./bandeiras.exe -u root -p mysqlCaso contrário, o comando deve retornar a mensagem no bloco else.
Conclusão
Neste artigo, abordamos o básico do trabalho dos argumentos da linha de comando usando o pacote do sistema operacional. Também abordamos como usar sinalizadores da linha de comando do pacote Flags.
Obrigado pela leitura!!