X-Git-Url: https://git.distorted.org.uk/~mdw/sgt/putty/blobdiff_plain/ff2ae36762dccc463baba86bf9d39de1a57a70e1..9c77ddf65fc39fdb5d35ed6b06c3817fc9f56982:/doc/psftp.but diff --git a/doc/psftp.but b/doc/psftp.but index 40094376..d9c070c1 100644 --- a/doc/psftp.but +++ b/doc/psftp.but @@ -1,4 +1,4 @@ -\versionid $Id: psftp.but,v 1.4 2001/12/31 16:15:19 simon Exp $ +\define{versionidpsftp} \versionid $Id$ \C{psftp} Using PSFTP to transfer files securely @@ -49,45 +49,13 @@ any server: At this point you can type \c{open server.example.com} or \c{open fred@server.example.com} to start a session. -The following sections describe PSFTP's command-line options. +PSFTP accepts all the general command line options supported by the +PuTTY tools, except the ones which make no sense in a file transfer +utility. See \k{using-general-opts} for a description of these +options. (The ones not supported by PSFTP are clearly marked.) -\S{psftp-option-l} \c{-l}: specify a user name - -The \c{-l} option is an alternative way to specify the user name to -log in as, on the command line. Instead of typing \c{psftp -user@host}, you can also type \c{psftp host -l user}. - -This option does not work in the \c{open} command once PSFTP has -started. - -\S{psftp-option-P} \c{-P}: specify a port number - -If the \c{host} you specify is a saved session, PSFTP uses any port -number specified in that saved session. If not, PSFTP uses the -default SSH port, 22. The \c{-P} option allows you specify the port -number to connect to for PSFTP's SSH connection. - -\S{psftp-option-v}\c{-v}: show verbose messages - -The \c{-v} option to PSFTP makes it print verbose information about -the establishing of the SSH connection. The information displayed is -equivalent to what is shown in the PuTTY Event Log -(\k{using-eventlog}). - -This information may be useful for debugging problems with PSFTP. - -\S{psftp-option-pw} \c{-pw}: specify a password - -If a password is required to connect to the \c{host}, PSFTP will -interactively prompt you for it. However, this may not always be -appropriate. If you are running PSFTP as part of some automated -job, it will not be possible to enter a password by hand. The -\c{-pw} option to PSFTP lets you specify the password to use on the -command line. - -Since specifying passwords in scripts is a bad idea for security -reasons, you might want instead to consider using public-key -authentication; see \k{psftp-pubkey}. +PSFTP also supports some of its own options. The following sections +describe PSFTP's specific command-line options. \S{psftp-option-b} \c{-b}: specify a file containing batch commands @@ -247,8 +215,12 @@ operate on. For example, if you type \c{get filename.dat} then PSFTP will look for \c{filename.dat} in your remote working directory on the server. -To change your remote working directory, use the \c{cd} command. To -display your current remote working directory, type \c{pwd}. +To change your remote working directory, use the \c{cd} command. If +you don't provide an argument, \c{cd} will return you to your home +directory on the server (more precisely, the remote directory you were +in at the start of the connection). + +To display your current remote working directory, type \c{pwd}. \S{psftp-cmd-lcd} The \c{lcd} and \c{lpwd} commands: changing the local working directory @@ -280,6 +252,17 @@ specify the local file name after the remote one: This will fetch the file on the server called \c{myfile.dat}, but will save it to your local machine under the name \c{newname.dat}. +To fetch an entire directory recursively, you can use the \c{-r} +option: + +\c get -r mydir +\c get -r mydir newname + +(If you want to fetch a file whose name starts with a hyphen, you +may have to use the \c{--} special argument, which stops \c{get} +from interpreting anything as a switch after it. For example, +\cq{get -- -silly-name-}.) + \S{psftp-cmd-put} The \c{put} command: send a file to the server To upload a file to the server from your local PC, you use the @@ -297,6 +280,37 @@ specify the remote file name after the local one: This will send the local file called \c{myfile.dat}, but will store it on the server under the name \c{newname.dat}. +To send an entire directory recursively, you can use the \c{-r} +option: + +\c put -r mydir +\c put -r mydir newname + +(If you want to send a file whose name starts with a hyphen, you may +have to use the \c{--} special argument, which stops \c{put} from +interpreting anything as a switch after it. For example, \cq{put -- +-silly-name-}.) + +\S{psftp-cmd-mgetput} The \c{mget} and \c{mput} commands: fetch or +send multiple files + +\c{mget} works almost exactly like \c{get}, except that it allows +you to specify more than one file to fetch at once. You can do this +in two ways: + +\b by giving two or more explicit file names (\cq{mget file1.txt +file2.txt}) + +\b by using a wildcard (\cq{mget *.txt}). + +Every argument to \c{mget} is treated as the name of a file to fetch +(unlike \c{get}, which will interpret at most one argument like +that, and a second argument will be treated as an alternative name +under which to store the retrieved file), or a wildcard expression +matching more than one file. + +\c{mput} is similar to \c{put}, with the same differences. + \S{psftp-cmd-regetput} The \c{reget} and \c{reput} commands: resuming file transfers @@ -441,7 +455,7 @@ using the Windows \c{ren} command to rename files on your local PC. \H{psftp-pubkey} Using public key authentication with PSFTP Like PuTTY, PSFTP can authenticate using a public key instead of a -password. There are two ways you can do this. +password. There are three ways you can do this. Firstly, PSFTP can use PuTTY saved sessions in place of hostnames. So you might do this: @@ -455,7 +469,11 @@ username to log in as (see \k{config-username}). hostname: type \c{psftp sessionname}, where \c{sessionname} is replaced by the name of your saved session. -Secondly, PSFTP will attempt to authenticate using Pageant if Pageant +Secondly, you can supply the name of a private key file on the command +line, with the \c{-i} option. See \k{using-cmdline-identity} for more +information. + +Thirdly, PSFTP will attempt to authenticate using Pageant if Pageant is running (see \k{pageant}). So you would do this: \b Ensure Pageant is running, and has your private key stored in it.