[gull] Normalisation des noms de fichiers et dossiers

Laurent Franceschetti laurent at franceschetti.net
Tue Dec 29 17:28:20 CET 2020




> Le 29 déc. 2020 à 17:06, Samuel Chenal <samuel.chenal at ll-dd.ch> a écrit :
> 
> Hello !
> 
> L'un d'entre vous aurait-il un script pour "normaliser" les noms de
> fichiers et de dossiers ?

C’est un problème auquel j’ai eu passablement l’occasion de penser ! Pour ma part, j’avais besoin de mettre une date dans le nom du document.
Je suis parti sur un package python (qui est un langage puissant avec un parseur de ligne de commande puissant, et qui sait « auto-installer » des commandes).

> 
> Sur GNU/Linux, ou sur MacOSX, on peut mettre un peu se qu'on veut comme
> nom de fichiers/dossiers, mais dès qu'on doit les transférer via Samba
> ou sur un file system plus basique, on est souvent coincé. Et même si on
> reste dans GNU/Linux, on est souvent embêté avec certains caractères
> spéciaux ou réservés (comme le ? ou les espaces).
> 
> Ce que j'aimerais faire, c'est lancer un script qui renomme les fichiers
> et les dossiers, en remplaçant les caractères réservés par un autre, non
> réservé, comme le underscore par exemple.


Le besoin est clair.


> 
> Les caractères que j'aimerais remplacer sont ceux qui posent en général
> souci sur du FAT ou via CIFS : +*/&%?!$,'":; l'espace et les caractères
> accentués. Exemple :
> 
> Que penser de l'opéra, les concerts et autres ?.odt
> 
> --> Que_penser_de_l_opera_les_concerts_et_autres.odt
> 

Bonne idée. Il faudrait spécifier la fonction de base attendue, ainsi que les options possibles.

> Idéalement, il faudrait remplacer les caractères accentués par les mêmes
> caractères sans accents et supprimer les espaces, surtout ceux en début
> de nom ou en fin de nom.
> 
> Il me semble que c'est un problème assez courant, mais je n'ai pas
> trouvé de solution réellement satisfaisante sur le net. Quelqu'un
> aurait-il une commande magique ou un script bash ad hoc dans sa besace
> ?  ;-)
> 
> a+
> 

Note qu’il y a la commande rename: https://www.cyberciti.biz/tips/renaming-multiple-files-at-a-shell-prompt.html <https://www.cyberciti.biz/tips/renaming-multiple-files-at-a-shell-prompt.html> (il y en même 2 qui circulent sauf erreur).
Eventuellement: https://github.com/ap/rename/blob/master/rename <https://github.com/ap/rename/blob/master/rename>


Sinon, qu’à cela ne tienne ? On pourrait faire ça « proprement »? En créant un package sur github?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://forum.linux-gull.ch/pipermail/gull/attachments/20201229/9fbf7d27/attachment.html>


More information about the gull mailing list