Как получить аргументы командной строки в Go без пакета «flags»? - PullRequest
18 голосов
/ 11 ноября 2009

Я пытаюсь написать синтаксический анализатор командной строки в стиле GNU для Go, поскольку пакет flags еще не обрабатывает все это:

program -aAtGc --long-option-1 argument-to-1 --long-option-2 -- real-argument

Очевидно, я не хочу использовать пакет flags, так как пытаюсь его заменить. Есть ли другой способ добраться до командной строки?

1 Ответ

43 голосов
/ 11 ноября 2009

Nevermind.

package main

import (
    "fmt"
    "os"
)

func main() {
    args := os.Args
    fmt.Printf("%d\n", len(args))

    for i := 0; i<len(args); i++ {
        fmt.Printf("%s\n", args[i])
    }
}

Документация, однако, довольно неполная.

...