Skip to content

SFTP Examples

Andrew Lambert edited this page Jul 24, 2018 · 17 revisions

SSH File Transfer Protocol

SFTP is a protocol for managing files on a server over SSH.

Download

This example downloads a file over SFTP:

  Dim session As SSH.Session = SSH.Connect("ssh://user:[email protected]/")
  Dim sftp As New SSH.SFTPSession(session)
  Dim reader As SSHStream = sftp.Get("file.txt")
  Dim writer As BinaryStream = BinaryStream.Create(SpecialFolder.Desktop.Child("file.txt"))
  
  Do Until reader.EOF
    writer.Write(reader.Read(1024))
  Loop
  
  reader.Close
  writer.Close

Upload

This example uploads a file over SFTP:

  Dim session As SSH.Session = SSH.Connect("ssh://user:[email protected]/")
  Dim sftp As New SSH.SFTPSession(session)
  Dim writer As SSHStream = sftp.Put("file.txt")
  Dim reader As BinaryStream = BinaryStream.Open(SpecialFolder.Desktop.Child("file.txt"))
  
  Do Until reader.EOF
    writer.Write(reader.Read(1024))
  Loop
  
  reader.Close
  writer.Close

List directory

This example lists a remote directory using SFTP:

  Dim session As SSH.Session = SSH.Connect("ssh://user:[email protected]/")
  Dim sftp As New SSH.SFTPSession(session)
  Dim names() As String
  Dim lister As SSHStream = sftp.ListDirectory("/path/to/dir/")
  
  Do Until lister.EOF
    names.Append(lister.Read(1024))
  Loop
  
  lister.Close
Clone this wiki locally