Scroll to navigation

PCP(1) S3QL PCP(1)


pcp - Recursive, parallel copy of directory trees


pcp [options] <source> [<source> ...] <destination>


The pcp command is a is a wrapper that starts several sync processes to copy directory trees in parallel. This is allows much better copying performance on file system that have relatively high latency when retrieving individual files like S3QL.

Note: Using this program only improves performance when copying from an S3QL file system. When copying to an S3QL file system, using pcp is more likely to decrease performance.


The pcp command accepts the following options:
--log <target>
Destination for log messages. Specify none for standard output or syslog for the system logging daemon. Anything else will be interpreted as a file name. Log files will be rotated when they reach 1 MiB, and at most 5 old log files will be kept. Default: None
be really quiet
--debug-modules <modules>
Activate debugging output from specified modules (use commas to separate multiple modules). Debug messages will be written to the target specified by the --log option.
Activate debugging output from all S3QL modules. Debug messages will be written to the target specified by the --log option.
just print program version and exit
Pass -aHAX option to rsync.
--processes <no>
Number of rsync processes to use (default: 10).


pcp may terminate with the following exit codes:
Everything went well.
An unexpected error occured. This may indicate a bug in the program.
Invalid command line argument or configuration file key.


pcp is shipped as part of S3QL,


© 2008 Nikolaus Rath <>
October 20, 2019 3.3.2