How to Change the Current Directory in Go
Created
Modified
Using Dir Property
Usually if you need a command to run from a specific directory, you can specify that as the Dir property on the Command, for example:
package main
import (
"os/exec"
)
func main() {
cmd := exec.Command("ls", "-al")
cmd.Dir = "/home/user"
cmd.Run()
}
Using os.Chdir Function
The os.Chdir()
function changes the current working directory to the named directory. If there is an error, it will be of type *PathError. For example,
package main
import (
"fmt"
"os"
)
func main() {
h, _ := os.UserHomeDir()
fmt.Println(h)
err := os.Chdir("/root/go")
if err != nil {
panic(err)
}
}
/root
This doesn't change the terminal location.