我正在尝试将os.exec(https://nathanleclaire.com/blog/2014/12/29/shelled-out-commands-in-golang/)与以下命令一起使用:
value=`something`; echo $value
但是看起来后面的嘀嗒声正在弄乱弦乐的命令。我做了.Split。
如果我使用
something,则
如何使用后蜱?我是否必须找到另一种写命令的方法?
由于
答案 0 :(得分:1)
Go执行这些命令是一种不能使用shell的方法,因为它会创建一个新进程。 因此,您应该创建一个新的shell进程,例如:
package main
import (
"os"
"os/exec"
)
func main() {
cmd := exec.Command("sh", "-c", "value=`ls`; echo $value")
cmd.Stdout = os.Stdout
err := cmd.Run()
if err != nil {
panic(err)
}
}
让我知道它不是你想要的!