lundi 6 mars 2017

python rename files & folders recursively... Replace accents and all non alphanum by "."

python rename files & folders recursively. Replace accents and all non alphanum by "." :
regular expression --> [^0-9a-zA-Z_-]

Utilisation : par exemple les fichiers d'une médiathèque qui pourraient contenir des caractères ou des mots parasites.

ChangeWords.txt : fichier contenant les chaînes de caractères à changer / supprimer avec une syntaxe simple : xxxxx;. ou xxxxx est à la chaînes à remplacer ";" le caractère délimiteur et "." la chaîne de remplacement. Par principe, les chaînes de remplacement sont inscrites en minuscules bien que la recherche et remplacement s'opère en "case insensitive".

DeleteFiles.txt contient le nom des fichiers à supprimer. Typiquement certains sites envoient des fichiers tels que listedesalbums.txt ou blueray.720p.txt (...). Dans ce cas il suffira de saisir le nom de ces fichiers afin qu'ils soient supprimés. Toutefois, comme le script opére le renommage en premier, un nom de fichier arrivé par exemple en "fichier pub du site bidule.txt" sera renommé en fichier.pub.du.site.bidule.txt. C'est donc ce nom qu'il faudra inscrire pour suppression

rname.01.py est le script
Pour faire fonctionner le script vous devez créer un répertoire ou déposer les fichiers dans un répertoire existant, puis l'appeler comme suit :

python /opt/rname/rnanme.py /myfolder


ou /opt/rname/rnanme.py est le répertoire qui contient le script et les fichiers DeleteFiles.txt et le fichier ChangeWords.txt

/myfolder est le répertoire qui contient les dossiers et fichiers à renommer

NB :
  • le script supprime les accents et remplace les espaces par des . 
  • une suite de plusieurs point '....' sera converti en un seul
le code et les fichiers sont sur https://github.com/SadarSSI/rname/tree/master

Aucun commentaire:

Enregistrer un commentaire