[go] Flag 패키지를 사용한 명령줄 인수 처리

명령줄 프로그램을 작성할 때 사용자가 전달하는 인수들을 처리하는 것은 상당히 일반적입니다. Go 언어에서는 flag 패키지를 활용하여 이러한 명령줄 인수 처리를 간편하게 할 수 있습니다. flag 패키지를 활용하면 명령줄에서 전달된 플래그와 인수를 쉽게 읽어들일 수 있습니다.

flag 패키지 소개

Go 언어에서 제공되는 flag 패키지는 명령줄 인수를 처리하는데 사용됩니다. 이 패키지를 사용하면 간단한 인터페이스를 통해 명령줄 플래그와 인수를 해석할 수 있습니다. flag 패키지는 명령줄 플래그와 인수를 해석하는 기능과 함께, 도움말 출력, 디폴트 값 설정, 타입 변환 등의 다양한 편의 기능도 제공합니다.

flag 패키지는 Go 표준 라이브러리에 포함되어 있기 때문에 별도의 설치 없이 바로 사용할 수 있습니다.

flag 패키지 예제

다음은 간단한 예제를 통해 flag 패키지를 사용하는 방법을 보여줍니다.

package main

import (
	"flag"
	"fmt"
)

func main() {
	// 정수형 플래그 선언
	intFlag := flag.Int("num", 0, "an integer flag")

	// 부울형 플래그 선언
	boolFlag := flag.Bool("verbose", false, "a bool flag")

	// 문자열 플래그 선언
	stringFlag := flag.String("name", "default", "a string flag")

	// 모든 플래그 값 파싱
	flag.Parse()

	// 처리된 플래그 값 출력
	fmt.Println("num:", *intFlag)
	fmt.Println("verbose:", *boolFlag)
	fmt.Println("name:", *stringFlag)
}

위의 예제는 세 종류의 플래그를 정의하고, flag.Parse()를 호출하여 명령줄에서 전달된 플래그 값을 파싱하는 과정을 보여줍니다. 이렇게 파싱된 플래그 값은 각 플래그 변수를 통해 사용할 수 있습니다.

flag 패키지는 명령줄 인수 처리를 위한 고가용성과 효율성을 제공하며, 명령줄 프로그램을 개발할 때 유용하게 사용될 수 있습니다.

flag 패키지에 대한 추가 정보는 공식 Go 문서에서 확인할 수 있습니다.