Version 4 of sftp

Updated 2008-10-07 08:42:13 by lars_h

SFTP stands for ssh file transfer protocol [L1 ]. When encountering the term sftp, one may in fact see references to two different things:

  1. the secure file transfer program client, which is a command line program that comes with OpenSSH and which is an interactive interface similar to the normal ftp clients one may find on their platform.
  2. the true ssh file transfer protocol. http://en.wikipedia.org/wiki/SSH_file_transfer_protocol refers to this as being almost a remote file system protocol. Full support of the protocol is more than just running ftp over SSH-2 or with an SSL layer.

A vfs module for the ssh file transfer protocol would be extremely cool.


While there's a widespread belief that Expect is essentially necessary for effective automation of sftp (first sense), this is not true. Several distinct approaches exist [L2 ] [L3 ] [L4 ] ... [explain] OTOH, most of these seem to be alternative SFTP clients with built-in automation support, so for use from within Tcl the most portable solution may well be to use Expect (or sftp in batch mode, if that is sufficient).