×

Golang Tutorial

Golang Reference

Golang Programs

Golang Practice

Golang Miscellaneous

Golang program to parse command flags with command line arguments

Here, we are going to learn how to parse command flags with command line arguments in Golang (Go language)?
Submitted by Nidhi, on April 12, 2021 [Last updated : March 04, 2023]

Parsing command flags with command line arguments in Golang

Problem Solution:

In this program, we will multiple command-line flags and multiple command-line arguments and print them on the console screen.

Program/Source Code:

The source code to parse command flags with command line arguments is given below. The given program is compiled and executed on the ubuntu 18.04 operating system successfully.

Golang code to parse command flags with command line arguments

// Golang program to parse command flags
// with command line arguments

package main

import "fmt"
import "flag"

func main() {
	colorPtr := flag.String("color", "red", "a string")
	PtrInt := flag.Int("luckyNum", 786, "an int")

	fmt.Println("Default value of color: ", *colorPtr)
	fmt.Println("Default value of lucky number: ", *PtrInt)

	flag.Parse()

	fmt.Println("Value of lucky number: ", *PtrInt)
	fmt.Println("Value of color flag: ", *colorPtr)

	fmt.Println("Arguments:", flag.Args())
}

Output:

$ go run hello.go -luckyNum=123 -color=green

Default value of color:  red
Default value of lucky number:  786
Value of lucky number:  123
Value of color flag:  green

Explanation:

In the above program, we declare the package main. The main package is used to tell the Go language compiler that the package must be compiled and produced the executable file. Here, we imported the fmt, flag packages then we can use a function related to the fmt and flag package.

In the main() function, we got command-line flags and arguments using the flag.Parse() and flag.Args() and print them on the console screen.

Golang Command-Line Arguments Programs »





Comments and Discussions!

Load comments ↻





Copyright © 2024 www.includehelp.com. All rights reserved.