1. 首页
  2. 主题
  3. Go问与答

对于ssh、scp命令 exec.Command 读取不到stdin输入

llsong168 · · 1421 次点击
示例代码如下,求帮助 ```go package main import ( "fmt" "os/exec" "strings" ) func main() { c := exec.Command("ssh", "myuser@192.168.8.82", "ls", "-l") c.Stdin = strings.NewReader("mypassword\n") output, err := c.CombinedOutput() if err != nil { fmt.Println(err) return } fmt.Println(string(output)) } ```
jan-bar
想要拥有,必定付出。
`sshpass`命令解君愁。貌似ssh输入密码不是标准输入吧。
#2
更多评论
因为本来就不是stdin 写过脚本的都知道,重定向不能用的
#1
已经搞定了,谢谢大家 Linux可以参考sshpass,控制pts输入就行, Windows调用WriteConsoleInputW就可以了
#3

用户登录

没有账号?注册

今日阅读排行

    加载中

一周阅读排行

    加载中