Go언어에서 명령행 인수를 처리하는 방법입니다.
몇가지 방법이 더 있지만 여기에서는 flag 모듈를 사용합니다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 |
package main import ( "flag" "fmt" ) func main() { file := flag.String("file", "default.txt", "Input file") maxcpu := flag.Int("maxcpu", 10, "Max CPU Count") isForce := flag.Bool("force", false, "Run force") flag.Parse() // 포인터 변수이므로 앞에 * 를 붙어 deference 해줘야 한다. fmt.Printf("file: %s\n", *file) fmt.Printf("maxcpu: %d\n", *maxcpu) fmt.Printf("force: %t\n", *isForce) } /* 테스트 C> go build exam_arguments.go C> exam_arguments -file=test.csv -maxtrial=5 -force=true */ |