]> andersk Git - openssh.git/blame - sftp.1
- jmc@cvs.openbsd.org 2006/01/18 10:53:29
[openssh.git] / sftp.1
CommitLineData
3da242db 1.\" $OpenBSD: sftp.1,v 1.62 2005/12/30 16:59:00 jmc Exp $
61e96248 2.\"
f3c7c613 3.\" Copyright (c) 2001 Damien Miller. All rights reserved.
61e96248 4.\"
5.\" Redistribution and use in source and binary forms, with or without
6.\" modification, are permitted provided that the following conditions
7.\" are met:
8.\" 1. Redistributions of source code must retain the above copyright
9.\" notice, this list of conditions and the following disclaimer.
10.\" 2. Redistributions in binary form must reproduce the above copyright
11.\" notice, this list of conditions and the following disclaimer in the
12.\" documentation and/or other materials provided with the distribution.
13.\"
14.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
15.\" IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
16.\" OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
17.\" IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
18.\" INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
19.\" NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
20.\" DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
21.\" THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
22.\" (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
23.\" THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
24.\"
317611b5 25.Dd February 4, 2001
61e96248 26.Dt SFTP 1
27.Os
28.Sh NAME
29.Nm sftp
bd47824b 30.Nd secure file transfer program
61e96248 31.Sh SYNOPSIS
72c5fe79 32.Nm sftp
a4e5acef 33.Bk -words
433e60ac 34.Op Fl 1Cv
7d5e8c46 35.Op Fl B Ar buffer_size
433e60ac 36.Op Fl b Ar batchfile
7d5e8c46 37.Op Fl F Ar ssh_config
433e60ac 38.Op Fl o Ar ssh_option
39.Op Fl P Ar sftp_server_path
c25d3df7 40.Op Fl R Ar num_requests
e3c1c3e6 41.Op Fl S Ar program
433e60ac 42.Op Fl s Ar subsystem | sftp_server
e3c1c3e6 43.Ar host
a4e5acef 44.Ek
72c5fe79 45.Nm sftp
d0445371 46.Oo Oo Ar user Ns @ Oc Ns
a4e5acef 47.Ar host Ns Oo : Ns Ar file Oo
48.Ar file Oc Oc Oc
72c5fe79 49.Nm sftp
d0445371 50.Oo Oo Ar user Ns @ Oc Ns
a4e5acef 51.Ar host Ns Oo : Ns Ar dir Ns
52.Oo Ar / Oc Oc Oc
72c5fe79 53.Nm sftp
81466908 54.Fl b Ar batchfile
d0445371 55.Oo Ar user Ns @ Oc Ns Ar host
61e96248 56.Sh DESCRIPTION
57.Nm
58is an interactive file transfer program, similar to
59.Xr ftp 1 ,
60which performs all operations over an encrypted
61.Xr ssh 1
62transport.
63It may also use many features of ssh, such as public key authentication and
64compression.
65.Nm
66connects and logs into the specified
cf7ff074 67.Ar host ,
61e96248 68then enters an interactive command mode.
69.Pp
3730bb22 70The second usage format will retrieve files automatically if a non-interactive
cf7ff074 71authentication method is used; otherwise it will do so after
72successful interactive authentication.
edeeab1e 73.Pp
f9d52dd1 74The third usage format allows
75.Nm
76to start in a remote directory.
edeeab1e 77.Pp
bd47824b 78The final usage format allows for automated sessions using the
81466908 79.Fl b
bd47824b 80option.
3da242db 81In such cases, it is necessary to configure non-interactive authentication
bd47824b 82to obviate the need to enter a password at connection time (see
81466908 83.Xr sshd 8
72c5fe79 84and
81466908 85.Xr ssh-keygen 1
bd47824b 86for details).
61e96248 87The options are as follows:
88.Bl -tag -width Ds
433e60ac 89.It Fl 1
90Specify the use of protocol version 1.
91.It Fl B Ar buffer_size
92Specify the size of the buffer that
93.Nm
94uses when transferring files.
95Larger buffers require fewer round trips at the cost of higher
96memory consumption.
97The default is 32768 bytes.
a5ec8a3d 98.It Fl b Ar batchfile
99Batch mode reads a series of commands from an input
acf06a60 100.Ar batchfile
a5ec8a3d 101instead of
acf06a60 102.Em stdin .
103Since it lacks user interaction it should be used in conjunction with
f74de0d7 104non-interactive authentication.
a8b64bb8 105A
f74de0d7 106.Ar batchfile
107of
108.Sq \-
a8b64bb8 109may be used to indicate standard input.
acf06a60 110.Nm
3730bb22 111will abort if any of the following
112commands fail:
7e35f994 113.Ic get , put , rename , ln ,
a4e5acef 114.Ic rm , mkdir , chdir , ls ,
9a36208d 115.Ic lchdir , chmod , chown , chgrp , lpwd
a5ec8a3d 116and
acf06a60 117.Ic lmkdir .
a4e5acef 118Termination on error can be suppressed on a command by command basis by
119prefixing the command with a
f74de0d7 120.Sq \-
bd47824b 121character (for example,
122.Ic -rm /tmp/blah* ) .
433e60ac 123.It Fl C
124Enables compression (via ssh's
125.Fl C
126flag).
127.It Fl F Ar ssh_config
128Specifies an alternative
129per-user configuration file for
130.Xr ssh 1 .
131This option is directly passed to
132.Xr ssh 1 .
61e96248 133.It Fl o Ar ssh_option
38539909 134Can be used to pass options to
135.Nm ssh
c21a7c4a 136in the format used in
137.Xr ssh_config 5 .
138This is useful for specifying options
38539909 139for which there is no separate
140.Nm sftp
bd47824b 141command-line flag.
142For example, to specify an alternate port use:
e3c1c3e6 143.Ic sftp -oPort=24 .
433e60ac 144For full details of the options listed below, and their possible values, see
145.Xr ssh_config 5 .
146.Pp
147.Bl -tag -width Ds -offset indent -compact
148.It AddressFamily
149.It BatchMode
150.It BindAddress
151.It ChallengeResponseAuthentication
152.It CheckHostIP
153.It Cipher
154.It Ciphers
433e60ac 155.It Compression
156.It CompressionLevel
157.It ConnectionAttempts
927fcba2 158.It ConnectTimeout
5e96b616 159.It ControlMaster
160.It ControlPath
433e60ac 161.It GlobalKnownHostsFile
162.It GSSAPIAuthentication
163.It GSSAPIDelegateCredentials
ba9d1100 164.It HashKnownHosts
433e60ac 165.It Host
166.It HostbasedAuthentication
167.It HostKeyAlgorithms
168.It HostKeyAlias
169.It HostName
170.It IdentityFile
3a065ed0 171.It IdentitiesOnly
396070f8 172.It KbdInteractiveDevices
433e60ac 173.It LogLevel
174.It MACs
175.It NoHostAuthenticationForLocalhost
176.It NumberOfPasswordPrompts
177.It PasswordAuthentication
178.It Port
179.It PreferredAuthentications
180.It Protocol
181.It ProxyCommand
182.It PubkeyAuthentication
433e60ac 183.It RhostsRSAAuthentication
184.It RSAAuthentication
8e99a198 185.It SendEnv
5d8d32a3 186.It ServerAliveInterval
187.It ServerAliveCountMax
433e60ac 188.It SmartcardDevice
189.It StrictHostKeyChecking
fd573618 190.It TCPKeepAlive
433e60ac 191.It UsePrivilegedPort
192.It User
193.It UserKnownHostsFile
194.It VerifyHostKeyDNS
433e60ac 195.El
196.It Fl P Ar sftp_server_path
bd47824b 197Connect directly to a local sftp server
7d5e8c46 198(rather than via
281cf948 199.Xr ssh 1 ) .
7d5e8c46 200This option may be useful in debugging the client and server.
c25d3df7 201.It Fl R Ar num_requests
bd47824b 202Specify how many requests may be outstanding at any one time.
203Increasing this may slightly improve file transfer speed
204but will increase memory usage.
205The default is 16 outstanding requests.
e3c1c3e6 206.It Fl S Ar program
207Name of the
208.Ar program
209to use for the encrypted connection.
210The program must understand
211.Xr ssh 1
212options.
433e60ac 213.It Fl s Ar subsystem | sftp_server
214Specifies the SSH2 subsystem or the path for an sftp server
215on the remote host.
216A path is useful for using
217.Nm
218over protocol version 1, or when the remote
219.Xr sshd 8
220does not have an sftp subsystem configured.
221.It Fl v
222Raise logging level.
223This option is also passed to ssh.
61e96248 224.El
225.Sh INTERACTIVE COMMANDS
0426a3b4 226Once in interactive mode,
227.Nm
3730bb22 228understands a set of commands similar to those of
61e96248 229.Xr ftp 1 .
f9d52dd1 230Commands are case insensitive.
231Pathnames that contain spaces must be enclosed in quotes.
232Any special characters contained within pathnames that are recognized by
233.Xr glob 3
234must be escaped with backslashes
235.Pq Sq \e .
236.Bl -tag -width Ds
68874d2b 237.It Ic bye
bd47824b 238Quit
239.Nm sftp .
0426a3b4 240.It Ic cd Ar path
3730bb22 241Change remote directory to
0426a3b4 242.Ar path .
0426a3b4 243.It Ic chgrp Ar grp Ar path
3730bb22 244Change group of file
0426a3b4 245.Ar path
246to
61e96248 247.Ar grp .
f9d52dd1 248.Ar path
249may contain
250.Xr glob 3
251characters and may match multiple files.
61e96248 252.Ar grp
0426a3b4 253must be a numeric GID.
254.It Ic chmod Ar mode Ar path
3730bb22 255Change permissions of file
0426a3b4 256.Ar path
257to
258.Ar mode .
f9d52dd1 259.Ar path
260may contain
261.Xr glob 3
262characters and may match multiple files.
0426a3b4 263.It Ic chown Ar own Ar path
3730bb22 264Change owner of file
0426a3b4 265.Ar path
266to
61e96248 267.Ar own .
f9d52dd1 268.Ar path
269may contain
270.Xr glob 3
271characters and may match multiple files.
61e96248 272.Ar own
273must be a numeric UID.
17910dce 274.It Ic exit
bd47824b 275Quit
276.Nm sftp .
58c54a79 277.It Xo Ic get
f9d52dd1 278.Op Fl P
58c54a79 279.Ar remote-path
280.Op Ar local-path
281.Xc
61e96248 282Retrieve the
0426a3b4 283.Ar remote-path
61e96248 284and store it on the local machine.
285If the local
3730bb22 286path name is not specified, it is given the same name it has on the
bd47824b 287remote machine.
f9d52dd1 288.Ar remote-path
289may contain
290.Xr glob 3
291characters and may match multiple files.
292If it does and
293.Ar local-path
294is specified, then
295.Ar local-path
296must specify a directory.
bd47824b 297If the
58c54a79 298.Fl P
f9d52dd1 299flag is specified, then full file permissions and access times are
58c54a79 300copied too.
17910dce 301.It Ic help
302Display help text.
433e60ac 303.It Ic lcd Ar path
304Change local directory to
305.Ar path .
0426a3b4 306.It Ic lls Op Ar ls-options Op Ar path
3730bb22 307Display local directory listing of either
61e96248 308.Ar path
309or current directory if
310.Ar path
0426a3b4 311is not specified.
f9d52dd1 312.Ar ls-options
313may contain any flags supported by the local system's
314.Xr ls 1
315command.
316.Ar path
317may contain
318.Xr glob 3
319characters and may match multiple files.
0426a3b4 320.It Ic lmkdir Ar path
61e96248 321Create local directory specified by
0426a3b4 322.Ar path .
3a7fe5ba 323.It Ic ln Ar oldpath Ar newpath
3730bb22 324Create a symbolic link from
3a7fe5ba 325.Ar oldpath
326to
327.Ar newpath .
0426a3b4 328.It Ic lpwd
329Print local working directory.
00b3ad3e 330.It Xo Ic ls
f9d52dd1 331.Op Fl 1aflnrSt
00b3ad3e 332.Op Ar path
333.Xc
f9d52dd1 334Display a remote directory listing of either
61e96248 335.Ar path
f9d52dd1 336or the current directory if
0426a3b4 337.Ar path
bd47824b 338is not specified.
f9d52dd1 339.Ar path
340may contain
341.Xr glob 3
342characters and may match multiple files.
c4c84934 343.Pp
f9d52dd1 344The following flags are recognized and alter the behaviour of
c4c84934 345.Ic ls
f9d52dd1 346accordingly:
347.Bl -tag -width Ds
348.It Fl 1
349Produce single columnar output.
350.It Fl a
351List files beginning with a dot
352.Pq Sq \&. .
353.It Fl f
354Do not sort the listing.
355The default sort order is lexicographical.
356.It Fl l
357Display additional details including permissions
358and ownership information.
359.It Fl n
360Produce a long listing with user and group information presented
361numerically.
362.It Fl r
363Reverse the sort order of the listing.
364.It Fl S
365Sort the listing by file size.
366.It Fl t
367Sort the listing by last modification time.
368.El
0426a3b4 369.It Ic lumask Ar umask
3730bb22 370Set local umask to
0426a3b4 371.Ar umask .
372.It Ic mkdir Ar path
61e96248 373Create remote directory specified by
0426a3b4 374.Ar path .
b65c3807 375.It Ic progress
376Toggle display of progress meter.
58c54a79 377.It Xo Ic put
f9d52dd1 378.Op Fl P
58c54a79 379.Ar local-path
2ea16b0b 380.Op Ar remote-path
58c54a79 381.Xc
61e96248 382Upload
0426a3b4 383.Ar local-path
bd47824b 384and store it on the remote machine.
385If the remote path name is not specified, it is given the same name it has
386on the local machine.
f9d52dd1 387.Ar local-path
388may contain
389.Xr glob 3
390characters and may match multiple files.
391If it does and
392.Ar remote-path
393is specified, then
394.Ar remote-path
395must specify a directory.
bd47824b 396If the
58c54a79 397.Fl P
398flag is specified, then the file's full permission and access time are
399copied too.
0426a3b4 400.It Ic pwd
401Display remote working directory.
0426a3b4 402.It Ic quit
bd47824b 403Quit
404.Nm sftp .
0426a3b4 405.It Ic rename Ar oldpath Ar newpath
61e96248 406Rename remote file from
407.Ar oldpath
408to
0426a3b4 409.Ar newpath .
0426a3b4 410.It Ic rm Ar path
61e96248 411Delete remote file specified by
0426a3b4 412.Ar path .
433e60ac 413.It Ic rmdir Ar path
414Remove remote directory specified by
415.Ar path .
3a7fe5ba 416.It Ic symlink Ar oldpath Ar newpath
3730bb22 417Create a symbolic link from
3a7fe5ba 418.Ar oldpath
419to
420.Ar newpath .
048ff12c 421.It Ic version
422Display the
423.Nm
424protocol version.
d0445371 425.It Ic \&! Ar command
3730bb22 426Execute
61e96248 427.Ar command
0426a3b4 428in local shell.
d0445371 429.It Ic \&!
0426a3b4 430Escape to local shell.
d0445371 431.It Ic \&?
0426a3b4 432Synonym for help.
433.El
61e96248 434.Sh SEE ALSO
433e60ac 435.Xr ftp 1 ,
f9d52dd1 436.Xr ls 1 ,
2cad6cef 437.Xr scp 1 ,
61e96248 438.Xr ssh 1 ,
439.Xr ssh-add 1 ,
440.Xr ssh-keygen 1 ,
f9d52dd1 441.Xr glob 3 ,
c21a7c4a 442.Xr ssh_config 5 ,
2cad6cef 443.Xr sftp-server 8 ,
444.Xr sshd 8
445.Rs
7b518233 446.%A T. Ylonen
447.%A S. Lehtinen
2cad6cef 448.%T "SSH File Transfer Protocol"
449.%N draft-ietf-secsh-filexfer-00.txt
450.%D January 2001
451.%O work in progress material
452.Re
This page took 1.094385 seconds and 5 git commands to generate.