Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I am running fedora and I would like a tool to automatically rename files on my ext3 fedora partition so that I can transfer files with incompatible names flawlessly. Any advice on how to proceed ? Thanks in advance.

Edit: I know there is a nice GUI tool for this purpose named ext2ntfs-compatibilator, but it doens't seem to be 64 bits compatible.

share|improve this question
Could you give some examples please? – terdon Aug 22 '12 at 15:58
Like name a text file njkn??'è' and try to copy to a ntfs or fat32 disk and it just won't do -_- ... Anything with \/:*?"<>| actually – B2F Aug 22 '12 at 16:01
NTFS doesn't care about most characters. You can use any UTF-16 code point except NUL (U+0000) and / (slash). The Win32 subsystem, as normally used by Windows (there's a POSIX subsystem for Windows), has restrictions of NUL and /\:*?"<>|. Please don't mix NTFS with the Win32 subsystem. – Bob Aug 22 '12 at 16:38
up vote 1 down vote accepted

Right, first of all do not use special characters in file names, it just complicates matters :).

Have a look at my answer here.

For a GUI way try thunar's bulk rename feature:

$ yum install thunar
$ Thunar --bulk-rename
  1. Add the files you want to rename

  2. Choose "Search and Replace"

  3. Paste the regex from my linked answer ([\:\;\>\<\@\$\#\&\(\)\?\\\%\ ])into the "Search For" field.

  4. Write "_" into the "Replace With" field

  5. Click on "Rename Files"

Thunar Bulk Rename Screenshot

share|improve this answer
Thanks, its almost duplicate. But my question is more fedora and user interface oriented... I have seen one GUI tool for that but forgot the name. If I don't get a more user friendly option I'll give it a try. – B2F Aug 22 '12 at 16:17
Found it : ext2ntfs-compatibilator ( the problem is it doesn't seem to be 64 bits compatible... So I am looking for an alternative. – B2F Aug 22 '12 at 16:26
@ZenMaster I updated my answer to include a GUI way. Also, there is nothing specific to fedora about what you are trying to do. The CLI solution I gave will work for any *nix using BASH. – terdon Aug 22 '12 at 16:30
The solution you provided renames only the first character, not all! – sebix Nov 15 '15 at 17:21
@sebix yes, I don't know how to make the replacement global with this program. If you have perl-rename (which you do on Debian based systems like Debian itself, Ubuntu or Mint), just use rename 's/[\:\;\>\<\@\$\#\&\(\)\?\\\%\ ]/_/g' file1 file2 file3 fileN. If you don't have perl rename, do for i in file1 file2 fileN; do mv "$i" "${i//[\:\;\>\<\@\$\#\&\(\)\?\\\%\ ]/_}"; done. – terdon Nov 15 '15 at 18:24

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .