PCP(1)

πŸ’– PCP(1) β€” the S3QL girlies' guide to copyin' trees in parallel πŸ’–

okay bestie, so this is the pcp page from the S3QL manual, section 1, and honestly? it's a whole vibe. let's get into it πŸ¦‹


✨ NAME ✨

pcp β€” Recursive, parallel copy of directory trees 🌳🌳🌳


✨ SYNOPSIS ✨

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

✨ DESCRIPTION ✨

So like, pcp is a wrapper β€” a lil delegating queen πŸ‘‘ β€” that starts up several sync processes to copy directory trees in parallel. and why would you do that? because it allows much better copying performance on file systems that have relatively high latency when retrieving individual files. like… S3QL. iykyk πŸ’…

⚠️ note, bestie, this matters: using this program only improves performance when copying from an S3QL file system. when you're copying to an S3QL file system, using pcp is more likely to decrease performance. so… read the room, okay? πŸ™ˆ

✨ OPTIONS ✨

the pcp command accepts the following options, and we're going through all of them, no skips, periodt ✨

  • --log <target> β€” where your log messages go. write none for standard output, or syslog for the system logging daemon. anything else? it gets interpreted as a file name, simple as that. log files get rotated when they hit 1 MiB, and at most 5 old log files will be kept. default: None πŸ“
  • --quiet β€” be really quiet 🀫
  • --debug-modules <modules> β€” activate debugging output from the modules you name (use commas to separate multiple modules, or 'all' for everything, because why not). debug messages get written to whatever target you set with the --log option.
  • --debug β€” activate debugging output from all S3QL modules. debug messages go to the target specified by the --log option. it's giving "turn it all the way up" πŸ”₯
  • --version β€” just print program version and exit. short, sweet, iconic πŸŽ€
  • -a β€” pass the -aHAX option to rsync.
  • --processes <no> β€” number of rsync processes to use (default: 10). ten lil workers doing the most πŸ’ͺ

✨ EXIT CODES ✨

pcp may terminate with the following exit codes, and yes we list every single one:

  • 0 β€” Everything went well. πŸŽ‰ slay.
  • 1 β€” An unexpected error occurred. This may indicate a bug in the program. πŸ’€ not slay.
  • 2 β€” Invalid command line argument or configuration file key. 🚫

✨ SEE ALSO ✨

pcp is shipped as part of S3QL, https://github.com/s3ql/s3ql/. go look, bestie 🫢


Β© 2008 Nikolaus Rath <Nikolaus@rath.org> β€” iconic behavior, honestly πŸ’œ


okay and that's the whole page!! this was S3QL version 5.2.3, dated Nov 02, 2024, and it lives in the PCP(1) manual. tysm for reading, go copy some trees in parallel, you got this πŸ’…βœ¨πŸŒΈ

πŸ“¦ where this page comes from