convmv

convmv converts filenames (not file content), directories, and even whole filesystems to a different encoding. This comes in very handy if, for example, one switches from an 8-bit locale to an UTF-8 locale or changes charsets on Samba servers. It has some smart features: it automagically recognises if a file is already UTF-8 encoded (thus partly converted filesystems can be fully moved to UTF-8) and it also takes care of symlinks. Additionally, it is able to convert from normalization form C (UTF-8 NFC) to NFD and vice-versa. This is important for interoperability with Mac OS X, for example, which uses NFD, while Linux and most other Unixes use NFC. Though it's primary written to convert from/to UTF-8 it can also be used with almost any other charset encoding. Convmv can also be used for case conversion from upper to lower case and vice versa with virtually any charset. Note that this is a command line tool which requires at least Perl version 5.8.0.

Licenses GPL

Tweet this project

Rss Recent releases

  • Rrelease-mid
  •  12 Dec 2008 09:57
  • Rrelease-after

Changes: This release works around some more Perl::Encode incompatibilities. It now runs again with old Perl 5.8 releases.

  • Rrelease-mid
  •  30 Nov 2008 20:50
  • Rrelease-after

Changes: This release adds a new parseable mode, an option to better fix double UTF-8 encoded files, and the ability to preserve timestamps. Some minor things have been polished.

  • Rrelease-mid
  •  23 Jan 2008 10:31
  • Rrelease-after

Changes: This release also works with Perl 5.10. It is licensed under the GPL v2 and v3.

  • Rrelease-mid
  •  22 Jan 2008 07:37
  • Rrelease-after

Changes: This release fixes some small bugs, improves the test suite, and introduces a new check routine which is called at program startup. Perl 5.8.8 introduced a bug that affected convmv which can be worked around. Perl 5.10 again introduced a bug which is now reported to be a Perl bug so that the user does not wonder why things don't work as expected.

  • Rrelease-mid
  •  26 Jun 2006 07:05
  • Rrelease-after

Changes: This release fixes some issues with "0" filenames and some incompatibilities with recent Perl versions.

Rss Recent comments

Rcomment-before 22 Jan 2008 07:23 Rcomment-trans bjoernjacke Rcomment-after

Re: UTF-16 and convmv 1.10

> I have a bunch of UTF-16 files (from

> windows-made zips) to convert

UTF-16 is the *internal* charset of windows filesystems. You never see UTF-16 in filenames externally. You cannot use that charset as it contains null bytes, which are not alloowed in filenames. Please read the man page to get more information on all that stuff.

Rcomment-before 07 Dec 2007 01:32 Rcomment-trans rvalles Rcomment-after

UTF-16 and convmv 1.10
I have a bunch of UTF-16 files (from windows-made zips) to convert, and I'm having no luck with 1.10, as it follows:

$ convmv -f UTF-16 -t UTF-8 /bin/ls

Starting a dry run without changes...

UTF-16:Unrecognised BOM 6c73 at /usr/lib/perl5/5.8.8/i686-linux/Encode.pm line 186.

Rcomment-before 13 Jul 2007 13:11 Rcomment-trans mrthefter Rcomment-after

Re: convmv for win32?

>

> % Have anyone heard of the same

> solution

> % for converting filename encoding in

> % windows? I'm having a really hard

> time

> % finding something...

>

>

> I haven't, I'm afraid.

>

> I don't even know how to find out what

> the encoding of filenames on Windows is.

>

> Anyone?

>

>

I believe Windows' NTFS filesystem uses UTF-16.

http://en.wikipedia.org/wiki/Ntfs

Rcomment-before 19 Mar 2007 08:01 Rcomment-trans ColinAdams Rcomment-after

Re: convmv for win32?

> Have anyone heard of the same solution

> for converting filename encoding in

> windows? I'm having a really hard time

> finding something...

I haven't, I'm afraid.

I don't even know how to find out what the encoding of filenames on Windows is.

Anyone?

Rcomment-before 03 Jan 2007 02:12 Rcomment-trans asfaltboy Rcomment-after

convmv for win32?
Have anyone heard of the same solution for converting filename encoding in windows? I'm having a really hard time finding something...

6b1da482f6e3b07dd4b8c30f704280b1_thumb

Project Spotlight

AC3D

A 3D graphics design tool.

F23ce688f95be46b3ac62a0f80043447_thumb

Project Spotlight

OpenApproach

A cross-platform air traffic control simulation.