【发布时间】:2020-05-21 11:24:55
【问题描述】:
我想用 Go 实现 cd 命令,main.go:
func main() {
flag.Parse()
if flag.NArg() == 0 {
curUser, err := user.Current()
if err != nil {
log.Fatal(err)
}
os.Chdir(curUser.HomeDir)
// or like this
// cmd := exec.Command("cd", curUser.HomeDir)
fmt.Println(os.Getwd()) // ok in application
}
}
但是当我在 shell 中运行go run main.go 时,它仍然没有切换到我的主目录。
那么如何通过运行 go 文件来更改我在 shell 中的工作目录?
【问题讨论】:
-
非常感谢,他们两个是不同的进程,shell当前工作目录可以自己改变
标签: go