Golang Kopie der remote-Datei auf den lokalen Ordner mit sftp golang-Bibliothek
Bekam ich den code für das erstellen einer Datei auf dem remote host:
config := &ssh.ClientConfig{
User: "xx",
HostKeyCallback: nil,
Auth: []ssh.AuthMethod{
ssh.Password("xx"),
},
}
config.SetDefaults()
sshConn, err := ssh.Dial("tcp", "192.xx.1.xx:22", config)
if err != nil {
panic(err)
}
defer sshConn.Close()
client, err := sftp.NewClient(sshConn)
if err != nil {
panic(err)
}
defer client.Close()
file, err := client.Create("/www/hello9.txt")
if err != nil {
panic(err)
}
defer file.Close()
if _, err := file.Write([]byte("Hello world")); err != nil {
log.Fatal(err)
}
Jedoch benötigt zum kopieren einer Datei von einem remote-host zum lokalen host. Wie kann ich erreichen, das mit dem golang-tools github.com/pkg/sftp und golang.org/x/crypto/ssh nur?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Kann man es mit der
Open(path string)
undWriteTo(w io.Writer)
Methoden aus der sftp-Paket (und natürlich braucht man ein Betriebssystem.Datei oder ähnliches zu schreiben).dstFile, err := sftp.Create(dstPath + filename)
srcFile, err := sftp.Open(srcPath + filename)
solltesrcFile, err := os.Open(srcPath + filename)