Go в примери: Податки на командния ред

Подаването на данни на командния ред1 е обичаен начин за изпълнение на програми с различни входни данни. Например при изпълнението на go run hello.go run и hello.go са податки (данни, подадени на командния ред) на програмата go.


  1. command-line interface – взаимодействие чрез команден ред https://bg.wikipedia.org/wiki/Интерфейсскоманден_ред
package main
import (
    "fmt"
    "os"
)
func main() {

Отрязъкът os.Args съдържа суровите данни, подадени на командния ред1. Забележете, че първата стойност в отрязъка е пълният пѫт до програмата, а os.Args[1:] (всички останали стойности) са податките към програмата.


  1. Разделител за данните е празното пространство между тях.
    argsWithProg := os.Args
    argsWithoutProg := os.Args[1:]

Можете да ползвате отделните податки като укажете мястото им в отрязъка.

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

За придобиване на опит с податките на командния ред, най-добре е първо да изградите програмата като изпълните 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

В следващия пример ще разгледаме по-напредничав начин за обработка на податките чрез т.нар. флагове.

Следващ пример: .