Go语言使用Scp传输文件
发布时间:2020-12-16 09:38:56 所属栏目:大数据 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 package main import ( "fmt" "go-ssh/ssh" "io" "os" ) const ( user = "user" ip_port = "ip_port" password = "Passwd" ) func main() { PassWd :=
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考 package main import ( "fmt" "go-ssh/ssh" "io" "os" ) const ( user = "user" ip_port = "ip_port" password = "Passwd" ) func main() { PassWd := []ssh.AuthMethod{ssh.Password(password)} Conf := ssh.ClientConfig{User: user,Auth: PassWd} Client,err := ssh.Dial("tcp",ip_port,&Conf) if err != nil { fmt.Println(nil) } defer Client.Close() if session,err := Client.NewSession(); err == nil { defer session.Close() go func() { Buf := make([]byte,1024) w,_ := session.StdinPipe() defer w.Close() File,_ := os.Open("FilePath") info,_ := File.Stat() fmt.Fprintln(w,"C0644",info.Size(),"Des_Name") for { n,err := File.Read(Buf) fmt.Fprint(w,string(Buf[:n])) if err != nil { if err == io.EOF { return } else { panic(err) } } } }() if err := session.Run("/usr/bin/scp -qrt /mnt"); err != nil { if err != nil { if err.Error() != "Process exited with: 1. Reason was: ()" { fmt.Println(err.Error()) } } } } } 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |