Renommage de fichier
En informatique, renommer un fichier consiste à modifier le nom de ce fichier dans la table d'allocation des fichiers.
L'utilisateur ou le système peut utiliser différents outils pour effectuer cette manipulation. Cette manipulation peut s'effectuer à l'aide de commande interactive intégré aux systèmes d'exploitation, à l'aide de fonctions proposées par les langages de programmation, avec un logiciel dédié ou en développant un programme qui modifie directement le nom du fichier. Des interfaces graphiques permettent également de le faire, comme l'explorateur Windows par exemple.
Le changement de nom de fichier est parfois oralement appelé renommage, ou renommer, sur le modèle de la langue anglaise : renamed, to rename.
Applications
Le renommage ou le déplacement de fichier peut-être utilisé dans différents contextes :
- conservation d'un ancien fichier que l'on s'apprête à remplacer ;
- changement de suffixe du nom de fichier ;
- afin de donner un nom plus significatif ;
- afin de rendre le fichier disponible sur un autre support (clé USB, internet, disquette, etc.) ;
- traitement automatisé d'un lot de fichiers.
Histoire
La commande mv existait dans Unix, dès la version 6 [1], dans les années 1970. Elle existait aussi préalablement dans la première édition [2].
Historiquement, sous Unix, le déplacement et le renommage de fichier sont des opérations similaires, puisqu'elles ont en commun le fait de changer le nom absolu du fichier, de garantir que le fichier n'est pas perdu, et de donner un statut indiquant si l'opération s'est déroulée comme convenu.
Dans les premières versions, le renommage de fichier consistait à créer un lien (avec la commande link), de manière que deux noms de fichiers pointent sur le même fichier, puis à supprimer le premier nom de fichier[3].
Méthodes
Interface en ligne de commande
Sous Unix et Linux on utilise la commande UNIX mv
(en référence au terme anglais move, déplacer) pour renommer ou déplacer des fichiers et des répertoires. Des problèmes d'interopérabilité peuvent apparaître puisque leur systèmes de fichiers ne garantissent pas l'encodage des noms de fichiers. Une conversion d'encodage du nom de fichier peut donc être nécessaire, pour garder le nom textuel du fichier, tout en changeant son nom binaire. Cette fonctionnalité n'est pas fournie par la commande mv, mais pas la commande convmv[4].
Sous MS-DOS et Windows, on distingue la notion de déplacement de fichier, qui consiste à le rendre disponible dans un autre répertoire, en modifiant le chemin et en conservant le nom relatif, du concept de renommage, qui consiste à le rendre disponible dans le même répertoire, en conservant le chemin et en changeant le nom relatif. On peut utiliser sous ces systèmes les commandes ren
ou rename
pour renommer un fichier ou un répertoire, depuis la version DOS 1.0.
Interface graphique
On peut utiliser la fonction de glisser-déposer proposée par l'explorateur Windows. Cette opération fait toutefois courir le risque d'un déplacement partiel, si une erreur intervient en cours d'opération.
Fonction C
En langage C, la fonction correspondante s'appelle rename
.
Syntaxe
int rename(const char *oldpath, const char *newpath);
rename
renomme le fichier oldpath vers le fichier newpath, en le déplaçant vers un autre répertoire si besoin est. Si le fichier destination existe, il sera écrasé (si le processus en a le droit).
Code retour
rename
renvoie 0 s'il réussit, ou -1 s'il échoue, auquel cas errno contient le code d'erreur.
Notes et références
Annexes
Articles connexes
Liens externes
- (fr) Introduction à la commande mv
- (fr) Page man de la commande mv
- (fr) Page man de l'appel système rename
- Portail de l’informatique