gpt4 book ai didi

go - 使用ssh将带有标志的本地脚本运行到远程计算机

转载 作者:行者123 更新时间:2023-12-01 21:10:13 24 4
gpt4 key购买 nike

我需要在go程序中实现类似的功能,如下所示。

ssh user@host "python" - < ./test.py -f bar

我现在可以实现突出显示的部分,我只需要在脚本文件中传递标志即可。

下面是突出显示部分的代码。

package main
import (
"log"
"os"

"golang.org/x/crypto/ssh"
)

func main() {
user := "user"
hostport := "10.10.10.10:22"
script, _ := os.OpenFile("test.py", os.O_RDWR|os.O_CREATE, 0755)
interpreter := "python3"
client, session, err := connectToHost(user, hostport)
session.Stdin = script
session.Stdout = os.Stdout
err = session.Run(interpreter)
if err != nil {
log.Fatal(err)
}
client.Close()
defer session.Close()
}

最佳答案

使用重定向时,可以让bash处理它:

bash -c "<command>"

将此传递给 session.Run(...)

关于go - 使用ssh将带有标志的本地脚本运行到远程计算机,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62069753/

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