I have a requirement to map the drives in Windows using go and found this link to be useful What is the best way to map windows drives using golang?
When I tried to use the code given here, I ran into this error
exec: "net use": executable file not found in %PATH%
I verified that the bin folder of go is in the PATH variable. I also tried by running it like
cmd, err := exec.Command("cmd", "/c", "NET USE", "T:", \\SERVERNAME\C$, "/PERSISTENT").CombinedOutput()
but I get this error:
exit status 1 You used an option with an invalid value.
Any help on what I'm doing wrong here ?
Every argument to exec.Command()
is used as a single argument, so:
exec.Command(... "NET USE", ..)
Will mean that NET USE
is passed as a single argument, which is the same as doing this from the command line:
cmd /c "net use"
Which means it will try to find net use.exe
, instead of passing the argument use
to net.exe
.
So the correct way is:
exec.Command("cmd", "/c", "net", "use", "Q:, `\\SERVER\SHARE`, "/user:Alice pa$$word", "/P")
The cmd /c
part probably isn't needed, but I don't have a Windows machine to verify.
Also note how I used backticks (`
) for \\SERVER\SHARE
instead of "
, so you don't have to double up the backslashes.