소개
Go 언어의 내장 패키지인 flag
를 사용하면 명령행 옵션을 쉽게 처리할 수 있습니다. 이 패키지를 사용하면 다양한 형식의 옵션을 처리할 수 있으며, 사용법도 간단합니다.
이 블로그에서는 flag
패키지를 사용하여 명령행 옵션을 처리하는 방법에 대해 살펴보겠습니다.
옵션 처리
flag
패키지를 사용하면 명령행에서 전달된 옵션을 간단히 처리할 수 있습니다.
예를 들어, 다음과 같이 -name
이라는 옵션을 처리할 수 있습니다.
import "flag"
name := flag.String("name", "guest", "사용자 이름")
flag.Parse()
fmt.Println("안녕하세요, ", *name, "님!")
위 코드에서 flag.String
함수를 사용하여 name
이라는 옵션을 정의하고, 기본값을 guest
로 지정했습니다. 그리고 Parse
함수를 호출하여 명령행 옵션을 파싱합니다.
플래그 값 읽기
flag.String
함수를 사용하여 문자열 값을 읽는 것 외에도, flag
패키지는 Int
, Bool
, Float64
등 다양한 타입의 값도 처리할 수 있습니다.
예를 들어, age
라는 정수형 옵션을 처리하는 방법은 다음과 같습니다.
age := flag.Int("age", 18, "사용자 나이")
flag.Parse()
fmt.Println("당신은 ", *age, "살 입니다.")
flag.Int
함수를 사용하여 age
라는 정수형 옵션을 정의하고, 기본값을 18로 지정했습니다.
인수 값 읽기
때로는 명령행 옵션으로 넘기기보다는 명령행의 인수로 값을 받아야 할 때도 있습니다.
이럴 때도 flag
패키지를 사용하여 인수 값을 처리할 수 있습니다. 예를 들어, flag.Args
함수를 사용하여 명령행 인수를 처리할 수 있습니다.
flag.Parse()
args := flag.Args()
for _, arg := range args {
fmt.Println("인수:", arg)
}
결론
Go 언어의 flag
패키지를 사용하면 명령행 옵션을 쉽게 처리할 수 있습니다. 이를 통해 프로그램을 유연하게 제어할 수 있으며, 사용자로부터 값을 입력받을 때 유용하게 사용할 수 있습니다.
위에서 설명한 내용을 참고하여 프로그램에 필요한 명령행 옵션을 간편하게 처리해보세요!