During all this I uncovered a bug in how Archive::Tar handles sparse
files stored in tarballs; the library reports the file as having no
contents and a size of 0. As a result, in the freed-bytes-commas test,
the tarball extraction has been replaced by on-the-fly file creation.
Make sure to print when a control character is present. If it doesn't,
it leads to confusion when bash reports two apparently-equal strings
don't actually match due to the presence of a non-printing character.