더북(TheBook)

main 함수

main 함수에서는 find(), grep(), display() 함수를 파이프라인으로 연결해서 실행한다. display()에서 반환한 채널을 <-를 통해 대기시키면 전체 작업이 완료될 때까지 프로그램을 종료하지 않고 대기한다.

func main() {
    path, pattern := parseArgs()
    <-display(grep(pattern, find(path)))
}

parseArgs() 함수에서는 커맨드 명령으로 전달된 매개변수(-path, -pattern)를 파싱해서 반환한다. 여기서는 기본 라이브러리의 flag 패키지를 사용했다. flag 패키지 사용법은 7장에서 상세히 다룬다.

import “flag”
 
var (
    path    = flag.String(“path”, ”.”, “path name”)
    pattern = flag.String(“pattern”, ”.go$”, “pattern”)
)
 
func parseArgs() (string, string) {
    flag.Parse()
    return *path, *pattern
}

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.