On various filesystems, I have a bunch of filesystem entries that have badly-encoded names (they were written with the wrong character encoding).
How can I automatically list all entries with names that are invalid for the current character encoding?
Having found all those entries, how can I automatically rename them all from one encoding to another?
I'd simply do a
unless you add the --notest it won't actually do anything to your files. Defaults assume the from encoding is ASCII and to encoding is UTF-8. Pipe that thru awk '{print $2}' to only get the filenames that would be converted.
Note: I'm assuming you are using Linux. Most POSIX filesystems don't care about the encoding of filenames, however the manpage of convmv has a couple of details (also how to decode double UTF-8 encoded filenames)