Ticker

6/recent/ticker-posts

Ad Code

Responsive Advertisement

Comment renommer un fichier sur Linux

Linux fournit plusieurs commandes pour renommer des fichiers, notamment en utilisant l'interface graphique et plusieurs commandes à utiliser dans un terminal. Cela rend relativement facile à renommer des fichiers individuels ou plusieurs fichiers à la fois par lot.

Dans ce tutoriel, je vous présente trois commandes mv, rename et mmv pour renommer des fichiers ou répertoires.

Comment renommer un fichier sur Linux

Comment renommer des fichiers sous Linux avec mv

Exemple d'utilisation basique

La commande mv s'utilise pour déplacer un fichier ou répertoire.
Mais on peut aussi l'utiliser pour renommer un fichier ou répertoire.
La syntaxe est la suivante :

mv [OPTIONS] Source Destination

Pour renommer un fichier ou dossier, il suffit de ne spécifier aucun chemin pour rester dans l'arborescence actuel.
Ce qui donne :

mv Nom_Fichier Nouveau_Nom_Fichier

Ainsi pour renommer monfichier.txt en monbeaufichier.txt, cela donne :

monfichier.txt monbeaufichier.txt
Renommer un fichier avec la commande mv

Comment renommer plusieurs fichiers en masse avec la commande mv

Il est aussi possible de renommer de multiples fichiers avec la commande mv.
Toutefois, comme celle-ci n'est pas prévue, on doit soit utiliser une boucle for, soit l'utiliser avec la commande find.

avec la boucle for

for f in *.html; do
    mv -- "$f" "${f%.html}.php"
done
  • La première ligne crée une boucle for qui liste tous les fichiers html dans la variable f
  • La deuxième ligne s'applique à chaque élément de la liste et déplace le fichier sur un nouveau remplaçant .html avec .php. La partie $ {fichier% .html} utilise l'expansion du paramètre shell pour supprimer la partie .html du nom de fichier.
  • done indique la fin du segment de la boucle.

avec find

find . -depth -name "*.html" -exec sh -c 'f="{}"; mv -- "$f" "${f%.html}.php"' \;

La commande find passe tous les fichiers se terminant par .html dans le répertoire actuel à mv un par un à l'aide de l'option -exec par la chaîne {} est le nom du fichier en cours de traitement.

Plus d'explications sur l'utilisation de find :

Comment renommer des fichiers sous Linux avec rename

Utilisez l'utilitaire de paquet comme APT ou Yum/dnf :

  • Pour Ubuntu, Mint ou Debian, use sudo apt install rename
  • Pour CentOS and Fedora, use sudo yum install prename
  • Enfin du côté de Arch Linux, use sudo pacman -S rename

Voici la syntaxe :

rename [options] 's/[élément du fichier]/[remplacement]/' [fichier]
  • rename: Invoque la commande renommée
  • [options]: Fournit un argument facultatif qui modifie la manière dont la commande exécute
  • s: Indique une expression de substitution
  • [élément du fichier]: Spécifie la partie du nom de fichier que vous souhaitez remplacer
  • [remplacement]: Spécifie un remplacement de la partie du nom de fichier actuel
  • [fichier]: Définit le fichier que vous souhaitez renommer. On peut utiliser les caractères joker pour cible un lot de fichiers

Par exemple pour renommer toutes les extensions html en php sur tous les fichiers html, utilisez la commande rename comme ceci :

rename 's/.html/.php/' *.html

Pour convertir toutes les majuscules en minuscules, on utilise le modifieur y/.
Ce dernier permet de modifier caractère par caractère.

rename 'y/A-Z/a-z/' *
Commande rename Linux - renommer et convertir toutes les majuscules en minuscules

D'autres exemples sont disponibles dans ce tutoriel complet :

Comment renommer plusieurs fichiers en masse, par lot sous Linux avec mmv

mmv pour mass move file est une commande dédiée pour déplacer, copier ou renommer de multiples fichiers.
La caractéristique la plus attrayante de mmv est sa capacité à renommer facilement beaucoup de fichiers en acceptant des caractères génériques dans la commande.
Cela vous permet d'ajouter facilement ou de supprimer certains modèles de noms de fichiers, ou même d'organiser du texte dans les noms.

Ce n'est pas une commande base et donc vous devez l'installer sur votre système.
Utilisez l'utilitaire de paquet comme APT ou Yum/dnf :

  • Pour Ubuntu, Mint ou Debian, use sudo apt install mmv
  • Pour CentOS and Fedora, use sudo yum install mmv
  • Enfin du côté de Arch Linux, use sudo pacman -S mmv

Cette commande changera tous les fichiers avec une extension .htm à .html.

mmv '*.htm' '#1.html'

Pour remplacer la première occurrence abc sur xyz dans tous les fichiers du répertoire actuel :

mmv '* abc *' '# 1xyz # 2'

Renommez des fichiers se terminant dans .html.en, .html.de, etc. pour se terminer dans .en.html, .de.html, etc. dans le répertoire actuel :

mmv '*.html.??' '#1.#2#3.html'

Pour renommer plusieurs fichiers en convertissant les majuscules en minuscules :

 mmv '*' '#l1'

Inversement pour convertir les minuscules en majuscules :

mmv '*' '#u1'

L’article Comment renommer un fichier sur Linux est apparu en premier sur malekal.com.

Enregistrer un commentaire

0 Commentaires