Skip to content
Related Articles
Open in App
Not now

Related Articles

Command Line Arguments in Golang

Improve Article
Save Article
  • Difficulty Level : Medium
  • Last Updated : 17 May, 2020
Improve Article
Save Article

Command-line arguments are a way to provide the parameters or arguments to the main function of a program. Similarly, In Go, we use this technique to pass the arguments at the run time of a program.

In Golang, we have a package called as os package that contains an array called as “Args”. Args is an array of string that contains all the command line arguments passed.

The first argument will be always the program name as shown below.

Example 1: Try to use offline compiler for better results. Save the below file as cmdargs1.go




// Golang program to show how
// to use command-line arguments
package main
  
import (
    "fmt"
    "os"
)
  
func main() {
  
    // The first argument
    // is always program name
    myProgramName := os.Args[0]
      
    // it will display 
    // the program name
    fmt.Println(myProgramName)
}


Output: Here, you can see it is showing the program name with full path. Basically you can call this as Os Filepath output. If you will run the program with some dummy arguments then that will also print as a program name.

Command-Line-Arguments-Golang

Example 2: Save the below file as cmdargs2.go




// Golang program to show how
// to use command-line arguments
package main
  
import (
    "fmt"
    "os"
)
  
func main() {
  
    // The first argument
    // is always program name
    myProgramName := os.Args[0]
  
    // this will take 4
    // command line arguments
    cmdArgs := os.Args[4]
  
    // getting the arguments
    // with normal indexing
    gettingArgs := os.Args[2]
  
    toGetAllArgs := os.Args[1:]
  
    // it will display
    // the program name
    fmt.Println(myProgramName)
      
    fmt.Println(cmdArgs)
      
    fmt.Println(gettingArgs)
      
    fmt.Println(toGetAllArgs)
}


Output:

Command-Line-Arguments-Go-Programming-Langauge


My Personal Notes arrow_drop_up
Related Articles

Start Your Coding Journey Now!