Comment by ButlerianJihad
2 days ago
You know, when I came into Unix in the 1990s we still didn't care about recursive copy, because all admins learned the standard idiom to copy over a hierarchy:
tar cf - . | ( cd /new/path; tar xpf - )
or thereabouts, because at the time, `tar` was more than capable of doing all the filesystem tricks that `cp` was clumsy with, and we understood this idiom well. You could also `dump` an entire block device.
I believe that my motivation was that the Unix wars were still raging hotly; as a sysadmin I needed portable skills and I wasn't tied or certified to one vendor's Unix, and therefore I sought out idioms that worked on SunOS, HP/UX, AIX, BSD, you name it. "cp -r" didn't enjoy that stable support at the time.
I still have scripts doing a cpio -o | cpio -i dance.
And... the worst thing is I don't really remember why(shakes fist at past me "write better comments"). Probably to do with how cpio's weird file selection actually worked well with it's use case. It reads a filtered list of files from one directory then uses that to copy only those filenames from another directory back into it.
I don't care all that much even today. (-:
I use pax -r -w most of the time.