Renomage fichier avec expression reguliere
apprentiDev
Messages postés
171
Statut
Membre
-
apprentiDev Messages postés 171 Statut Membre -
apprentiDev Messages postés 171 Statut Membre -
Bonjour,
Lors d'un précédent post j'ai réussi à faire une expression régulière qui est :
NOMORIGINE="[[:alpha:]]{2}[[:digit:]]+.*\.[jJ][pP][gG]"
pour accepter uniquement les fichiers qui respectent ce formatage de nom.
Le soucis c'est que après la classe digit j'ai mis .* pour symboliser un nombre indéterminé de caractère après les chiffres. Le souci c'est que je veux renommé sans tenir compte des caractères aprés les chiffres.
Je travaille avec un ubuntu et l'on peut utilisé mv pour renommé. Cependant vu que j'utilise une expression régulière pour la vérification des nomages de fichier je suposse qu'il faut que utiliser les expression reguliére pour le renomage. Ce qui rend le mv non adapté peut être...
J'ai vu qu'il y avait des commande awk et sed qui on l'air de correspondre à du renommage de fichier avec des expressions régulière mais j'arrive pas à comprendre leurs fonctionnement pour les adaptés à mon cas précis.
Si quelqu'un à une idée.
PS: Est-il possible de faire en sorte de découper le nom du fichier est de les stocker dans des variable.
Exemple pour aa1eeeeee.jpg
aa = [:alpha:]]{2} stocker dans $1
1 = [:digit:]+ stocker dans $2
eeeeee= .* stocker dans $3
.jpg stocker dans $4
Pour ensuite utilisé sed sans faire appelle à ce qui est contenu dans $3.
C'est faisable ?
Merci d'avance.
Lors d'un précédent post j'ai réussi à faire une expression régulière qui est :
NOMORIGINE="[[:alpha:]]{2}[[:digit:]]+.*\.[jJ][pP][gG]"
pour accepter uniquement les fichiers qui respectent ce formatage de nom.
Le soucis c'est que après la classe digit j'ai mis .* pour symboliser un nombre indéterminé de caractère après les chiffres. Le souci c'est que je veux renommé sans tenir compte des caractères aprés les chiffres.
Je travaille avec un ubuntu et l'on peut utilisé mv pour renommé. Cependant vu que j'utilise une expression régulière pour la vérification des nomages de fichier je suposse qu'il faut que utiliser les expression reguliére pour le renomage. Ce qui rend le mv non adapté peut être...
J'ai vu qu'il y avait des commande awk et sed qui on l'air de correspondre à du renommage de fichier avec des expressions régulière mais j'arrive pas à comprendre leurs fonctionnement pour les adaptés à mon cas précis.
Si quelqu'un à une idée.
PS: Est-il possible de faire en sorte de découper le nom du fichier est de les stocker dans des variable.
Exemple pour aa1eeeeee.jpg
aa = [:alpha:]]{2} stocker dans $1
1 = [:digit:]+ stocker dans $2
eeeeee= .* stocker dans $3
.jpg stocker dans $4
Pour ensuite utilisé sed sans faire appelle à ce qui est contenu dans $3.
C'est faisable ?
Merci d'avance.
A voir également:
- Renomage fichier avec expression reguliere
- Fichier bin - Guide
- Fichier epub - Guide
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Fichier .dat - Guide
2 réponses
Tu concatènes "mv " avec le nom d'origine avec " " et avec le nouveau nom et tu fais un pipe dans sh. Et voilou ;-))).
Merci de ta réponse fiddy. C'est un élément qu'il me faudra utilisé. Cependant je ne peux déterminé moi même les nom qui vont arrivés sur le serveur. ( le script est automatique) Vu que je ne peux déterminé moi même j'ai fait la REGEXP du post. C'est pour ça que je suppose qu'il me faut à nouveau une REGEXP pour renommer les fichiers pour enlevé les caractères en trop.