POSIX filenames may contain all characters except /, but some filesystems reserve characters like ?<>\\:*|". Using pax, I can copy files while replacing these reserved characters:
$ pax -rw -s '/[?<>\\:*|\"]/_/gp' /source /target
Run Code Online (Sandbox Code Playgroud)
But pax lacks an --delete option like rsync and rsync cannot substitute characters. I'm looking for a simple way to backup my music collection to an external hard drive on a regular basis.