[go] go 언어에서의 플래그 값 조작 방법

Go 언어에서는 플래그(flag)를 사용하여 프로그램 실행 시 동작을 제어할 수 있습니다. 이 플래그들은 커맨드 라인 인터페이스(CLI)를 통해 사용자가 지정할 수 있으며, Go 표준 라이브러리의 “flag” 패키지를 사용하여 손쉽게 구현할 수 있습니다.

플래그 값 설정하기

간단한 플래그를 설정하고 사용하는 방법은 다음과 같습니다.

package main

import (
	"flag"
	"fmt"
)

func main() {
	wordPtr := flag.String("word", "hello", "a string")
	numPtr := flag.Int("num", 42, "an int")
	boolPtr := flag.Bool("fork", false, "a bool")

	flag.Parse()

	fmt.Println("word:", *wordPtr)
	fmt.Println("num:", *numPtr)
	fmt.Println("fork:", *boolPtr)
}

이 코드에서는 “word”, “num”, “fork” 이름의 플래그를 각각 string, int, bool 타입으로 설정하고 있습니다.

커맨드 라인에서 플래그 값 전달하기

프로그램을 실행할 때 커맨드 라인을 통해 플래그 값을 전달할 수 있습니다. [1] [2]

go run main.go -word=world -num=7 -fork

실행 결과:

word: world
num: 7
fork: true

이렇게 함으로써, 사용자는 프로그램 실행 시에 동작을 조정할 수 있게 됩니다.

결론

Go 언어에서 플래그를 사용하여 CLI 프로그램을 쉽게 제어할 수 있습니다. “flag” 패키지를 사용하여 효율적으로 플래그를 설정하고 처리할 수 있으며, 이를 통해 프로그램의 유연성과 사용자 경험을 향상시킬 수 있습니다.

[1] https://gobyexample.com/command-line-flags
[2] https://golang.org/pkg/flag/