Command Line Argument Processing in Go: Difference between revisions
Jump to navigation
Jump to search
Line 4: | Line 4: | ||
=Overview= | =Overview= | ||
<font color=darkkhaki>Use the <code>flag</code> package: </font> | <font color=darkkhaki>Use the <code>[[Go Package flag|flag]]</code> package: </font> | ||
<syntaxhighlight lang='go'> | <syntaxhighlight lang='go'> | ||
Revision as of 02:30, 18 October 2023
Internal
Overview
Use the flag
package:
var port int
flag.IntVar(&port, "port", 8080, "Some documentation for the flag")
flag.Parse()
I didn't find a way to tel whether the value has been indeed provided on command line or it's the default. This can be a problem when we also read the value from a configuration file, and we want the priority to be, in order: command line, config file and default.
Positional Arguments
args := os.Args
args[0]
is a string that represents the path of the executable, as it was invoked on the command line. Example: ./../bin/metadata
.