GNU/Linux >> Tutoriels Linux >  >> Linux

Comment renommer des répertoires sous Linux

Renommer des répertoires est l'une des opérations les plus élémentaires que vous devez souvent effectuer sur un système Linux. Vous pouvez renommer les répertoires à partir du gestionnaire de fichiers de l'interface graphique en quelques clics ou à l'aide du terminal de ligne de commande.

Cet article explique comment renommer des répertoires à l'aide de la ligne de commande.

Renommer les répertoires #

Dans les systèmes d'exploitation Linux et Unix, vous pouvez utiliser le mv (abréviation de déplacer) pour renommer ou déplacer des fichiers et des répertoires d'un emplacement à un autre.

La syntaxe du mv commande pour déplacer les répertoires est la suivante :

mv [OPTIONS] source destination

Par exemple, pour renommer le répertoire dir1 comme dir2 vous exécuteriez :

mv dir1 dir2

Lorsque vous renommez des répertoires, vous devez spécifier exactement deux arguments au mv commande. Le premier argument est le nom actuel du répertoire et le second est le nouveau nom.

Il est important de noter que si dir2 existe déjà, dir1 est déplacé vers le dir2 répertoire.

Pour renommer un répertoire qui n'est pas dans le répertoire de travail courant, vous devez spécifier le chemin absolu ou relatif :

mv /home/user/dir1 /home/user/dir2

Renommer plusieurs répertoires #

Renommer un seul répertoire est une tâche simple, mais renommer plusieurs répertoires à la fois peut être un défi, en particulier pour les nouveaux utilisateurs de Linux.

Renommer plusieurs répertoires à la fois est rarement nécessaire.

Renommer plusieurs répertoires avec mv #

Le mv La commande ne peut renommer qu'un seul fichier à la fois. Cependant, il peut être utilisé en conjonction avec d'autres commandes telles que find ou à l'intérieur de boucles pour renommer plusieurs fichiers à la fois.

Voici un exemple montrant comment utiliser le Bash for boucle pour ajouter la date actuelle aux noms de tous les répertoires du répertoire de travail actuel :

for d in *; do 
  if [ -d "$d" ]; then
    mv -- "$d" "${d}_$(date +%Y%m%d)"
  fi
done

Analysons le code ligne par ligne :

  • La première ligne crée une boucle et parcourt une liste de tous les fichiers.
  • La deuxième ligne vérifie si le fichier est un répertoire.
  • La troisième ligne ajoute la date actuelle à chaque répertoire.

Voici une solution à la même tâche en utilisant mv en combinaison avec find :

find . -mindepth 1 -prune -type d -exec sh -c 'd="{}"; mv -- "$d" "${d}_$(date +%Y%m%d)"' \;

Le find la commande passe tous les répertoires à mv un par un en utilisant le -exec option. La chaîne {} est le nom du répertoire en cours de traitement.

Comme vous pouvez le voir dans les exemples, renommer plusieurs répertoires avec mv n'est pas une tâche facile car elle nécessite une bonne connaissance des scripts Bash.

Renommer plusieurs répertoires avec rename #

Le rename La commande est utilisée pour renommer plusieurs fichiers et répertoires. Cette commande est plus avancée que mv car cela nécessite une connaissance de base des expressions régulières.

Il existe deux versions du rename commande avec une syntaxe différente. Nous utiliserons la version Perl du rename commande. Les fichiers sont renommés en fonction de l'expression régulière perl donnée.

L'exemple suivant montre comment remplacer les espaces dans les noms de tous les répertoires du répertoire de travail actuel par des traits de soulignement :

find . -mindepth 1 -prune -type d | rename 'y/ /_/'

Pour plus de sécurité, passez le -n option pour rename pour imprimer les noms des répertoires à renommer sans les renommer.

Voici un autre exemple montrant comment convertir les noms de répertoires en minuscules :

find . -mindepth 1 -prune -type d | rename 'y/A-Z/a-z/'

Conclusion #

Nous vous avons montré comment utiliser le mv commandes pour renommer les répertoires.

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


Linux
  1. Comment renommer des fichiers sous Linux

  2. Comment renommer un répertoire sous Linux

  3. Comment changer ou renommer un point de montage sous Linux

  4. Comment boucler sur des répertoires sous Linux?

  5. Comment lister récursivement les répertoires en C sous Linux ?

Comment renommer des fichiers en utilisant la ligne de commande sous Linux

Comment renommer un ou plusieurs fichiers sous Linux

Comment naviguer plus rapidement dans les répertoires sous Linux

Comment renommer le nom de la base de données MySQL sous Linux

Comment renommer des fichiers et des répertoires sous Linux

Comment lister uniquement les répertoires sous Linux