GNU/Linux >> Tutoriels Linux >  >> Linux

Renommer la commande sous Linux (renommer plusieurs fichiers)

Renommer plusieurs fichiers et répertoires avec le mv command peut être un processus fastidieux car il implique l'écriture de commandes complexes avec des tubes, des boucles, etc.

C'est là que le rename la commande est pratique. Il renomme les fichiers donnés en remplaçant l'expression de recherche dans leur nom par le remplacement spécifié.

Dans ce tutoriel, nous allons vous expliquer comment utiliser le rename commande pour renommer les fichiers par lots.

Installation de rename #

Il existe deux versions du rename commande avec une syntaxe et des fonctionnalités différentes. Nous utiliserons la version Perl du rename commande.

Si cette version n'est pas installée sur votre système, utilisez le gestionnaire de packages de votre distribution Linux pour l'installer :

  • Ubuntu et Debian

    sudo apt updatesudo apt install rename
  • CentOS et Fedora

    sudo yum install prename
  • Arch Linux

    yay perl-rename

Utilisation de rename #

Voici la syntaxe générale pour le rename commande :

rename [OPTIONS] perlexpr files

Le rename La commande est essentiellement un script Perl. Il renommera les files donnés selon le perlexpr spécifié expression régulière. Vous pouvez en savoir plus sur les expressions régulières Perl ici.

Par exemple, la commande suivante changera l'extension de tous les .css fichiers vers .scss :

rename 's/.css/.scss/' *.css

Expliquons la commande plus en détail :

  • s/search_pattern/replacement/ - L'opérateur de substitution.
  • .css - Le modèle de recherche. C'est le premier argument de l'opérateur de substitution. Le rename recherchera ce modèle dans le nom de fichier donné et s'il le trouve, il le remplacera par l'argument de remplacement.
  • .scss - Le remplacement. Le deuxième argument de l'opérateur de substitution.
  • *.css - Tous les fichiers avec l'extension ".css". Caractère générique (* ) est un symbole utilisé pour représenter zéro, un ou plusieurs caractères.

Avant d'exécuter la commande proprement dite et de renommer les fichiers et les répertoires, il est toujours judicieux d'utiliser le -n option qui effectuera un "essai à blanc" et vous montrera quels fichiers seront renommés :

rename -n 's/.css/.scss/' *.css

La sortie ressemblera à ceci :

rename(file-0.css, file-0.scss)
rename(file-1.css, file-1.scss)
rename(file-2.css, file-2.scss)
rename(file-3.css, file-3.scss)
rename(file-4.css, file-4.scss)

Par défaut, le rename La commande n'écrase pas les fichiers existants. Utilisez le -f option qui indique rename pour écraser les fichiers existants :

rename -f 's/.css/.scss/' *.css

Si vous voulez rename pour imprimer les noms des fichiers renommés avec succès, utilisez le -v option (verbeux) :

rename -v 's/.css/.scss/' *.css
file-0.css renamed as file-0.scss
file-1.css renamed as file-1.scss
file-2.css renamed as file-2.scss
file-3.css renamed as file-3.scss
file-4.css renamed as file-4.scss

rename Exemples #

Vous trouverez ci-dessous quelques exemples courants d'utilisation de la commande de renommage :

Remplacer les espaces dans les noms de fichiers par des traits de soulignement #

rename 'y/ /_/' *

Convertir les noms de fichiers en minuscules #

rename 'y/A-Z/a-z/' *

Convertir les noms de fichiers en majuscules #

rename 'y/a-z/A-Z/' *

Supprimer .bak à partir des noms de fichiers #

rename 's/\.bak$//' *.bak

Renommer .jpeg et .JPG noms de fichiers en .jpg #

rename 's/\.jpe?g$/.jpg/i' *

Conclusion #

Le rename La commande vous permet de renommer plusieurs fichiers à la fois, en utilisant des expressions régulières Perl.

Si vous avez des questions ou des commentaires, n'hésitez pas à laisser un commentaire.


Linux
  1. Comment compresser plusieurs fichiers sous Linux

  2. Comment renommer plusieurs fichiers ensemble sous Linux en utilisant 3 méthodes

  3. Commande mcopy sous Linux

  4. Suppression d'une partie d'un nom de fichier pour plusieurs fichiers sous Linux

  5. Comment renommer plusieurs fichiers en une seule commande ou un seul script sous Unix ?

Commande Rm sous Linux

Commande lsof sous Linux (10 exemples)

Comment renommer un ou plusieurs fichiers sous Linux

8 méthodes pour renommer plusieurs fichiers à la fois sous Linux

Linux renommer l'extension de plusieurs fichiers

Commande ls sous Linux/UNIX