gpt4 book ai didi

linux - 运行带有多个参数的 Linux 命令

转载 作者:IT王子 更新时间:2023-10-29 01:51:33 26 4
gpt4 key购买 nike

经过一些挖掘,我可以像这样从 go 运行 Linux 命令:

func main() {
lsCmd := exec.Command("ls")
lsOut, err := lsCmd.Output()
if err != nil {
panic(err)
}
fmt.Println(">ls")
fmt.Println(string(lsOut))
}

我想做的是,在远程机器上运行以下命令:

ssh -p $someport $someuser@$someip 'ls'

我可以从我的终端成功执行此操作,但是当我尝试在 Go 中运行它时,出现以下错误:

panic: exec: "ssh -p $someport $someuser@$someip 'ls'": executable file not found in $PATH

更新:为方便起见,我更新了问题。

最佳答案

根据有关 exec 的文档包、程序名和参数是Command 方法的不同参数。你应该做这样的事情:

exec.Command("ssh", "-p port", "user@ip", "'ls'")

如果您需要更详细的内容,您还可以查看 go.crypto/ssh包。

关于linux - 运行带有多个参数的 Linux 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24180517/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com