sftp(1) User Commands sftp(1)
sftp - secure file transfer program
sftp [-1Cv] [-B buffer_size] [-b batchfile] [-F ssh_config]
[-o ssh_option] [-P sftp_server_path] [-R num_requests]
[-S program] [-s subsystem | sftp_server] host
sftp [[user@]host[:file [file]]]
sftp -b batchfile [user@]host
The sftp utility is an interactive file transfer program with a user interface similar to
ftp(1) that uses the ssh(1) command to create a secure connection to the server.
sftp implements the SSH File Transfer Protocol as defined in IETF draft-ietf-secsh-
filexfer. There is no relationship between the protocol used by sftp and the FTP protocol
(RFC 959) provided by ftp(1).
The first usage format causes sftp to connect to the specified host and enter an interac-
tive mode. If a username was provided then sftp tries to log in as the specified user. If
a directory is provided then sftp tries to change the current directory on the server to
the specified directory before entering the interactive mode.
The second usage format retrieves the specified file from the server and copies it to the
specified target file or directory on the client. If a username is specified sftp tries to
log in as the specified user.
The following options are supported:
-b batchfile Batch mode reads a series of commands from an input batch-
file instead of stdin. Since it lacks user interaction, it
should be used in conjunction with non-interactive authenti-
cation. A batchfile of - can be used to indicate standard
input. sftp aborts if any of the following commands fail:
get, put, rm, rename, ln, rm, mkdir, chdir, ls, lchdir,
chmod, chown, chgrp, lpwd, and lmkdir. Termination on error
can be suppressed on a command by command basis by prefixing
the command with a - character (for example, -rm
-B buffer_size Specifies the size of the buffer that sftp uses when trans-
ferring files. Larger buffers require fewer round trips at
the cost of higher memory consumption. The default is 32768
-C Enables compression, using the -C flag in ssh(1).
-F ssh_config Specifies an alternative per-user configuration file for
ssh. This option is directly passed to ssh(1).
-o ssh_option Specifies an option to be directly passed to ssh(1).
-P sftp_server path Executes the specified path as an sftp-server and uses a
pipe, rather than an ssh connection, to communicate with it.
This option can be useful in debugging the sftp client and
server. The -P and -S options are mutually exclusive.
-R num_requests Specifies how many requests can be outstanding at any one
time. Increasing this can slightly improve file transfer
speed but increases memory usage. The default is 16 out-
-s subsystem | sftp_server Specifies the SSH2 subsystem or the path for an sftp server
on the remote host. A path is useful for using sftp over
protocol version 1, or when the remote sshd does not have an
sftp subsystem configured.
-S ssh_program path Uses the specified program instead of ssh(1) to connect to
the sftp server. The -P and -S options are mutually exclu-
sive. The program must understand ssh(1) options.
-v Raises logging level. This option is also passed to ssh(1).
-1 Specifies the use of protocol version 1.
The following operands are supported:
hostname | user@hostname The name of the host to which sftp connects and logs into.
Once in interactive mode, sftp understands a set of commands similar to those of ftp(1).
Commands are case insensitive and path names can be enclosed in quotes if they contain
Changes remote directory to path.
chgrp grp path
Changes group of file path to grp. grp must be a numeric GID.
chmod mode path
Changes permissions of file path to mode.
chown own path
Changes owner of file path to own. own must be a numeric UID.
get [flags] remote-path [local-path]
Retrieves the remote-path and stores it on the local machine. If the local path name
is not specified, it is specified the same name it has on the remote machine. If the
-P flag is specified, then the file's full permission and access time are copied too.
Displays help text.
Identical to the ? command.
Changes local directory to path.
lls [ls-options [path]]
Displays local directory listing of either path or current directory if path is not
Creates local directory specified by path.
ln oldpath newpath
Creates a link from oldpath to newpath.
Prints local working directory.
ls [-1aflnrSt] [path]
Displays remote directory listing of either path or current directory if path is not
specified. path can contain wildcards.
The ls supports the following options:
-a Lists files beginning with a dot (.).
-f Does not sort the listing. The default sort order is lexicographical.
-l Displays additional details including permissions and ownership information.
-n Produces a long listing with user and group information presented numerically.
-r Reverses the sort order of the listing.
-S Sorts the listing by file size.
-t Sorts the listing by last modification time.
-1 Produces single column output.
Sets local umask to umask.
Creates remote directory specified by path.
put [flags] local-path [local-path]
Uploads local-path and stores it on the remote machine. If the remote path name is not
specified, it is specified the same name it has on the local machine. If the -P flag
is specified, then the file's full permission and access time are copied too.
Displays remote working directory.
rename oldpath newpath
Renames remote file from oldpath to newpath.
Deletes remote file specified by path.
Removes remote directory specified by path.
symlink oldpath newpath
Creates a symbolic link from oldpath to newpath.
Displays the sftp protocol version.
Include a comment. This is useful in batch files.
If command is not specified, escapes to the local shell.
If command is specified, executes command in the local shell.
Displays help text.
Identical to the help command.
The following exit values are returned:
0 Successful completion.
>0 An error occurred.
See attributes(5) for descriptions of the following attributes:
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|Availability |SUNWsshu |
|Interface Stability |Committed |
ftp(1), scp(1), ssh(1), ssh-add(1), ssh-keygen(1), sshd(1M), attributes(5)
SunOS 5.11 8 Nov 2007 sftp(1)