Golang : Get command line arguments
Basically there are two ways to get arguments from the command line in Go.
The first way is via the flag
package
flag.go
package main
import (
"flag"
"fmt"
)
func main() {
flag.Parse() // get the arguments from command line
arg := flag.Arg(0) // get the source directory from 1st argument
fmt.Println("The first argument is " + arg)
}
the output :
go run flag.go here
The first argument is here
go run flag.go there
The first argument is there
The second way is via the os
package
osarg.go
package main
import (
"os"
"fmt"
)
func main () {
if len(os.Args) != 3 {
fmt.Printf("Usage : %s argument1 argument2 \n ", os.Args[0]) // return the program name back to %s
os.Exit(1) // graceful exit
}
fmt.Println("First argument is : " + os.Args[1] + "\n")
fmt.Println("Second argument is : " + os.Args[2] + "\n")
}
Ok, this should cover the needs to get arguments from command line. Did I miss anything ? Leave your comment below.
See also : Golang : Check if a directory exist or not
By Adam Ng
IF you gain some knowledge or the information here solved your programming problem. Please consider donating to the less fortunate or some charities that you like. Apart from donation, planting trees, volunteering or reducing your carbon footprint will be great too.
Advertisement
Tutorials
+11.8k Golang : Convert IPv4 address to packed 32-bit binary format
+6.5k Golang : Command line ticker to show work in progress
+32.8k Golang : How to stream file to client(browser) or write to http.ResponseWriter?
+4.6k Unix/Linux : How to find out the hard disk size?
+6.8k Android Studio : Rating bar example
+19.8k Golang : Get password from console input without echo or masked
+6.5k Golang : Convert(cast) io.Reader type to string
+22.2k Golang : minus time with Time.Add() or Time.AddDate() functions to calculate past date
+7.3k Android Studio : Import third-party library or package into Gradle Scripts
+18.6k Golang : Set or Add HTTP Request Headers
+16.9k Golang : Get download file size
+19.2k Golang : Saving private and public key to files