I will use exec.Command with different arguments depending on a variable. I do cmd := exec.Command(... in the if/else brackets , so cmd is unusable outside of that scope. Is it possible to initialize cmd above if/else so that it can be used afterward?
1 Answer
You can declare a typed variable before you have a value for it.
var cmd *exec.Cmd
// or
cmd := (*exec.Cmd)(nil)
Read more here https://golang.org/ref/spec#Variables and here https://golang.org/ref/spec#Variable_declarations.
var cmd *exec.Cmd(golang.org/ref/spec#Variables and golang.org/ref/spec#Variable_declarations)