]> andersk Git - openssh.git/blame - sftp.1
- (djm) OpenBSD CVS Sync
[openssh.git] / sftp.1
CommitLineData
e473dcd1 1.\" $OpenBSD: sftp.1,v 1.64 2007/05/31 19:20:16 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.\"
e473dcd1 25.Dd $Mdocdate$
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
db175906 183.It RekeyLimit
433e60ac 184.It RhostsRSAAuthentication
185.It RSAAuthentication
8e99a198 186.It SendEnv
5d8d32a3 187.It ServerAliveInterval
188.It ServerAliveCountMax
433e60ac 189.It SmartcardDevice
190.It StrictHostKeyChecking
fd573618 191.It TCPKeepAlive
433e60ac 192.It UsePrivilegedPort
193.It User
194.It UserKnownHostsFile
195.It VerifyHostKeyDNS
433e60ac 196.El
197.It Fl P Ar sftp_server_path
bd47824b 198Connect directly to a local sftp server
7d5e8c46 199(rather than via
281cf948 200.Xr ssh 1 ) .
7d5e8c46 201This option may be useful in debugging the client and server.
c25d3df7 202.It Fl R Ar num_requests
bd47824b 203Specify how many requests may be outstanding at any one time.
204Increasing this may slightly improve file transfer speed
205but will increase memory usage.
206The default is 16 outstanding requests.
e3c1c3e6 207.It Fl S Ar program
208Name of the
209.Ar program
210to use for the encrypted connection.
211The program must understand
212.Xr ssh 1
213options.
433e60ac 214.It Fl s Ar subsystem | sftp_server
215Specifies the SSH2 subsystem or the path for an sftp server
216on the remote host.
217A path is useful for using
218.Nm
219over protocol version 1, or when the remote
220.Xr sshd 8
221does not have an sftp subsystem configured.
222.It Fl v
223Raise logging level.
224This option is also passed to ssh.
61e96248 225.El
226.Sh INTERACTIVE COMMANDS
0426a3b4 227Once in interactive mode,
228.Nm
3730bb22 229understands a set of commands similar to those of
61e96248 230.Xr ftp 1 .
f9d52dd1 231Commands are case insensitive.
232Pathnames that contain spaces must be enclosed in quotes.
233Any special characters contained within pathnames that are recognized by
234.Xr glob 3
235must be escaped with backslashes
236.Pq Sq \e .
237.Bl -tag -width Ds
68874d2b 238.It Ic bye
bd47824b 239Quit
240.Nm sftp .
0426a3b4 241.It Ic cd Ar path
3730bb22 242Change remote directory to
0426a3b4 243.Ar path .
0426a3b4 244.It Ic chgrp Ar grp Ar path
3730bb22 245Change group of file
0426a3b4 246.Ar path
247to
61e96248 248.Ar grp .
f9d52dd1 249.Ar path
250may contain
251.Xr glob 3
252characters and may match multiple files.
61e96248 253.Ar grp
0426a3b4 254must be a numeric GID.
255.It Ic chmod Ar mode Ar path
3730bb22 256Change permissions of file
0426a3b4 257.Ar path
258to
259.Ar mode .
f9d52dd1 260.Ar path
261may contain
262.Xr glob 3
263characters and may match multiple files.
0426a3b4 264.It Ic chown Ar own Ar path
3730bb22 265Change owner of file
0426a3b4 266.Ar path
267to
61e96248 268.Ar own .
f9d52dd1 269.Ar path
270may contain
271.Xr glob 3
272characters and may match multiple files.
61e96248 273.Ar own
274must be a numeric UID.
17910dce 275.It Ic exit
bd47824b 276Quit
277.Nm sftp .
58c54a79 278.It Xo Ic get
f9d52dd1 279.Op Fl P
58c54a79 280.Ar remote-path
281.Op Ar local-path
282.Xc
61e96248 283Retrieve the
0426a3b4 284.Ar remote-path
61e96248 285and store it on the local machine.
286If the local
3730bb22 287path name is not specified, it is given the same name it has on the
bd47824b 288remote machine.
f9d52dd1 289.Ar remote-path
290may contain
291.Xr glob 3
292characters and may match multiple files.
293If it does and
294.Ar local-path
295is specified, then
296.Ar local-path
297must specify a directory.
bd47824b 298If the
58c54a79 299.Fl P
f9d52dd1 300flag is specified, then full file permissions and access times are
58c54a79 301copied too.
17910dce 302.It Ic help
303Display help text.
433e60ac 304.It Ic lcd Ar path
305Change local directory to
306.Ar path .
0426a3b4 307.It Ic lls Op Ar ls-options Op Ar path
3730bb22 308Display local directory listing of either
61e96248 309.Ar path
310or current directory if
311.Ar path
0426a3b4 312is not specified.
f9d52dd1 313.Ar ls-options
314may contain any flags supported by the local system's
315.Xr ls 1
316command.
317.Ar path
318may contain
319.Xr glob 3
320characters and may match multiple files.
0426a3b4 321.It Ic lmkdir Ar path
61e96248 322Create local directory specified by
0426a3b4 323.Ar path .
3a7fe5ba 324.It Ic ln Ar oldpath Ar newpath
3730bb22 325Create a symbolic link from
3a7fe5ba 326.Ar oldpath
327to
328.Ar newpath .
0426a3b4 329.It Ic lpwd
330Print local working directory.
00b3ad3e 331.It Xo Ic ls
f9d52dd1 332.Op Fl 1aflnrSt
00b3ad3e 333.Op Ar path
334.Xc
f9d52dd1 335Display a remote directory listing of either
61e96248 336.Ar path
f9d52dd1 337or the current directory if
0426a3b4 338.Ar path
bd47824b 339is not specified.
f9d52dd1 340.Ar path
341may contain
342.Xr glob 3
343characters and may match multiple files.
c4c84934 344.Pp
f9d52dd1 345The following flags are recognized and alter the behaviour of
c4c84934 346.Ic ls
f9d52dd1 347accordingly:
348.Bl -tag -width Ds
349.It Fl 1
350Produce single columnar output.
351.It Fl a
352List files beginning with a dot
353.Pq Sq \&. .
354.It Fl f
355Do not sort the listing.
356The default sort order is lexicographical.
357.It Fl l
358Display additional details including permissions
359and ownership information.
360.It Fl n
361Produce a long listing with user and group information presented
362numerically.
363.It Fl r
364Reverse the sort order of the listing.
365.It Fl S
366Sort the listing by file size.
367.It Fl t
368Sort the listing by last modification time.
369.El
0426a3b4 370.It Ic lumask Ar umask
3730bb22 371Set local umask to
0426a3b4 372.Ar umask .
373.It Ic mkdir Ar path
61e96248 374Create remote directory specified by
0426a3b4 375.Ar path .
b65c3807 376.It Ic progress
377Toggle display of progress meter.
58c54a79 378.It Xo Ic put
f9d52dd1 379.Op Fl P
58c54a79 380.Ar local-path
2ea16b0b 381.Op Ar remote-path
58c54a79 382.Xc
61e96248 383Upload
0426a3b4 384.Ar local-path
bd47824b 385and store it on the remote machine.
386If the remote path name is not specified, it is given the same name it has
387on the local machine.
f9d52dd1 388.Ar local-path
389may contain
390.Xr glob 3
391characters and may match multiple files.
392If it does and
393.Ar remote-path
394is specified, then
395.Ar remote-path
396must specify a directory.
bd47824b 397If the
58c54a79 398.Fl P
399flag is specified, then the file's full permission and access time are
400copied too.
0426a3b4 401.It Ic pwd
402Display remote working directory.
0426a3b4 403.It Ic quit
bd47824b 404Quit
405.Nm sftp .
0426a3b4 406.It Ic rename Ar oldpath Ar newpath
61e96248 407Rename remote file from
408.Ar oldpath
409to
0426a3b4 410.Ar newpath .
0426a3b4 411.It Ic rm Ar path
61e96248 412Delete remote file specified by
0426a3b4 413.Ar path .
433e60ac 414.It Ic rmdir Ar path
415Remove remote directory specified by
416.Ar path .
3a7fe5ba 417.It Ic symlink Ar oldpath Ar newpath
3730bb22 418Create a symbolic link from
3a7fe5ba 419.Ar oldpath
420to
421.Ar newpath .
048ff12c 422.It Ic version
423Display the
424.Nm
425protocol version.
d0445371 426.It Ic \&! Ar command
3730bb22 427Execute
61e96248 428.Ar command
0426a3b4 429in local shell.
d0445371 430.It Ic \&!
0426a3b4 431Escape to local shell.
d0445371 432.It Ic \&?
0426a3b4 433Synonym for help.
434.El
61e96248 435.Sh SEE ALSO
433e60ac 436.Xr ftp 1 ,
f9d52dd1 437.Xr ls 1 ,
2cad6cef 438.Xr scp 1 ,
61e96248 439.Xr ssh 1 ,
440.Xr ssh-add 1 ,
441.Xr ssh-keygen 1 ,
f9d52dd1 442.Xr glob 3 ,
c21a7c4a 443.Xr ssh_config 5 ,
2cad6cef 444.Xr sftp-server 8 ,
445.Xr sshd 8
446.Rs
7b518233 447.%A T. Ylonen
448.%A S. Lehtinen
2cad6cef 449.%T "SSH File Transfer Protocol"
450.%N draft-ietf-secsh-filexfer-00.txt
451.%D January 2001
452.%O work in progress material
453.Re
This page took 0.367609 seconds and 5 git commands to generate.