2

i've 600gb of data's from Mac Users, saved in a disk formatted in HFS+. A lot of folder and file name contain 'final spaces'. I don't know how users inserted them , but the result is that via Samba, a folder named "Customer ABC " (with the final space) become for example "EHFJ~1". In addition, users used special charachters like • and others strange file name.

How to massive rename that files/folder removing final spaces ? Is it possible using a linux / mac os script ?

Thanks

2 Answers 2

2

I have written a small python script to remove all characters from filenames that makes handling them under *nix difficult.

Perhaps this can help you as well.

#! /usr/bin/python # -*- coding: UTF-8 -*- """ usage: fixFileNames.py FILE... Renames FILEs to sensible names, avoiding collision. """ import sys import os from string import maketrans def fixFileName(file): ''' move file to filename: - without spaces, pipe characters, quotes ''' intab = ' |' outtab = '__' trantab = maketrans(intab, outtab) newFileName = file.translate(trantab, '\'\"').replace('_-_', '-') if file != newFileName: #only renames file if it's name contains any unwanted characters if os.path.exists(newFileName): print "ERROR: Not renaming %s, %s exists already" % (file, newFileName) else: print "renaming %s to %s" % (file, newFileName) os.rename(file, newFileName) # else: # print "file %s and newFilename %s are equal" % (file, newFileName) if __name__ == "__main__": if not len(sys.argv) > 1: print __doc__ sys.exit(1) for file in sys.argv[1:]: fixFileName(file) 

Anyone is free to use and or improve this. If you have any improvements I'd like to hear about them.

0

Yes, it is! I don't knwo exactly how, but since nobody else answered this yet, I think it is better than nothing. Using some regular expressions, that match final whitespace it should be possible. I don't know however how to get the truncated part of the filename

You must log in to answer this question.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.