Manipulação de Argumentos de Linha de Comando em Go

Beginner

This tutorial is from open-source community. Access the source code

Introdução

O objetivo deste laboratório é praticar o trabalho com argumentos de linha de comando em Golang.

Argumentos de Linha de Comando

O programa atualmente imprime os argumentos de linha de comando brutos que lhe são passados. No entanto, ele precisa ser modificado para imprimir argumentos específicos com base em seu índice.

  • Conhecimento básico de Golang
  • Familiaridade com argumentos de linha de comando
## Para experimentar com argumentos de linha de comando, é melhor
## construir um binário com `go build` primeiro.
$ go build command-line-arguments.go
$ ./command-line-arguments a b c d
[./command-line-arguments a b c d]
[a b c d]
c

## Em seguida, veremos um processamento de linha de comando mais avançado
## com flags.

A seguir, o código completo:

// Os [_argumentos de linha de comando_](https://en.wikipedia.org/wiki/Command-line_interface#Arguments)
// são uma forma comum de parametrizar a execução de programas.
// Por exemplo, `go run hello.go` usa os argumentos `run` e
// `hello.go` para o programa `go`.

package main

import (
	"fmt"
	"os"
)

func main() {

	// `os.Args` fornece acesso aos argumentos de linha de comando brutos.
	// Observe que o primeiro valor nesta fatia
	// é o caminho para o programa, e `os.Args[1:]`
	// contém os argumentos para o programa.
	argsWithProg := os.Args
	argsWithoutProg := os.Args[1:]

	// Você pode obter argumentos individuais com indexação normal.
	arg := os.Args[3]

	fmt.Println(argsWithProg)
	fmt.Println(argsWithoutProg)
	fmt.Println(arg)
}

Resumo

Neste laboratório, aprendemos como acessar e imprimir argumentos específicos de linha de comando em Golang. Ao usar a variável os.Args e indexá-la, podemos facilmente acessar os argumentos passados para o programa.