Go by Example: Command-Line Arguments

Argumentos de la línea de comandos son una forma común de parametrizar la ejecución de programas. Por ejemplo, go run hello.go usa run y hello.go como argumentos para el programa go.

package main
import (
    "fmt"
    "os"
)
func main() {

os.Args proporciona acceso a los argumentos de la línea de comandos en bruto. Ten en cuenta que el primer valor en este arreglo es la ruta al programa, y os.Args[1:] contiene los argumentos para el programa.

    argsWithProg := os.Args
    argsWithoutProg := os.Args[1:]

Puedes obtener argumentos individuales con indexación normal.

    arg := os.Args[3]
    fmt.Println(argsWithProg)
    fmt.Println(argsWithoutProg)
    fmt.Println(arg)
}

Para experimentar con argumentos de línea de comandos es mejor construir un binario primero con go build.

$ 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

A continuación, veremos un procesamiento de línea de comandos más avanzado con flags.

Siguiente ejemplo: Command-Line Flags.