pscp - Man Page

command-line SCP (secure copy) / SFTP client


pscp [options] [user@]host:source target
pscp [optionssource [source...] [user@]host:target
pscp [options-ls [user@]host:filespec


pscp is a command-line client for the SSH-based SCP (secure copy) and SFTP (secure file transfer protocol) protocols.


The command-line options supported by pscp are:


Show version information and exit.


Display the fingerprints of the PuTTY PGP Master Keys and exit, to aid in verifying new files released by the PuTTY team.


Remote directory listing.


Preserve file attributes.


Quiet, don't show statistics.


Copy directories recursively.


Allow server-side wildcards (DANGEROUS).


Show verbose messages.

-load session

Load settings from saved session.

-P port

Connect to port port.

-proxycmd command

Instead of making a TCP connection, use command as a proxy; network traffic will be redirected to the standard input and output of command. command must be a single word, so is likely to need quoting by the shell.

The special strings %host and %port in command will be replaced by the hostname and port number you want to connect to; to get a literal % sign, enter %%.

Backslash escapes are also supported, such as sequences like \n being replaced by a literal newline; to get a literal backslash, enter \\. (Further escaping may be required by the shell.)

(See the main PuTTY manual for full details of the supported %- and backslash-delimited tokens, although most of them are probably not very useful in this context.)

-l user

Set remote username to user.


Disable interactive prompts.


By default, PSCP will filter control characters from the standard error channel from the server, to prevent remote processes sending confusing escape sequences. This option forces the standard error channel to not be filtered.

-pwfile filename

Open the specified file, and use the first line of text read from it as the remote password.

-pw password

Set remote password to password. CAUTION: this will likely make the password visible to other users of the local machine (via commands such as `ps' or `w'). Use -pwfile instead.


Force use of SSH protocol version 1.


Force use of SSH protocol version 2.


Force use of the `bare ssh-connection' protocol. This is only likely to be useful when connecting to a psusan(1) server, most likely with an absolute path to a Unix-domain socket in place of host.


Force use of the SSH protocol. (This is usually not needed; it's only likely to be useful if you need to override some other configuration of the `bare ssh-connection' protocol.)

-4,  -6

Force use of IPv4 or IPv6 for network connections.


Enable SSH compression.

-i keyfile

Private key file for user authentication. For SSH-2 keys, this key file must be in PuTTY's PPK format, not OpenSSH's format or anyone else's.

If you are using an authentication agent, you can also specify a public key here (in RFC 4716 or OpenSSH format), to identify which of the agent's keys to use.


Don't try to use an authentication agent.


Allow use of an authentication agent. (This option is only necessary to override a setting in a saved session.)


Disconnect from any SSH server which accepts authentication without ever having asked for any kind of password or signature or token. (You might want to enable this for a server you always expect to challenge you, for instance to ensure you don't accidentally type your key file's passphrase into a compromised server spoofing PSCP's passphrase prompt.)

-hostkey key

Specify an acceptable host public key. This option may be specified multiple times; each key can be either a fingerprint (SHA256:AbCdE..., 99:aa:bb:..., etc) or a base64-encoded blob in OpenSSH's one-line format.

Specifying this option overrides automated host key management; only the key(s) specified on the command-line will be accepted (unless a saved session also overrides host keys, in which case those will be added to), and the host key cache will not be written.


Force use of SCP protocol.


Force use of SFTP protocol.

-sshlog logfile
-sshrawlog logfile

These options make pscp log protocol details to a file. (Some of these may be sensitive, although by default an effort is made to suppress obvious passwords.)

-sshlog logs decoded SSH packets and other events (those that -v would print). -sshrawlog additionally logs the raw encrypted packet data.


If PSCP is configured to write to a log file that already exists, discard the existing file.


If PSCP is configured to write to a log file that already exists, append new log data to the existing file.

More Information

For more information on pscp it's probably best to go and look at the manual on the PuTTY web page:


This man page isn't terribly complete. See the above web link for better documentation.

Referenced By

pnuke(1), pslurp(1), pssh(1).

2004-03-24 PuTTY tool suite