How to find encoding of a file via script on Linux?

Manglu picture Manglu · Apr 30, 2009 · Viewed 486.3k times · Source

I need to find the encoding of all files that are placed in a directory. Is there a way to find the encoding used?

The file command is not able to do this.

The encoding that is of interest to me is:ISO-8859-1. If the encoding is anything else, I want to move the file to another directory.

Answer

Shalom Craimer picture Shalom Craimer · Apr 30, 2009

Sounds like you're looking for enca. It can guess and even convert between encodings. Just look at the man page.

Or, failing that, use file -i (linux) or file -I (osx). That will output MIME-type information for the file, which will also include the character-set encoding. I found a man-page for it, too :)