web-dev-qa-db-fra.com

Comment renommer plusieurs fichiers avec leurs 10 premiers caractères?

Je rencontre un problème pour renommer plusieurs fichiers en remplaçant le nom par les 10 premiers caractères de leur ancien nom. J'ai essayé de trouver la solution sur Internet mais je n'ai pas trouvé les réponses.

Exemple:

Noms de fichiers originaux:

1208605001abAcd.jpg 
1201230111FbcAdee.jpg 
11512345714x611aaa.jpg 

Ce que je veux réaliser:

1208605001.jpg 
1201230111.jpg 
1151234571.jpg
7
surya_darmana

Tu peux essayer:

rename -n 's/(.{10}).*(\.jpg)$/$1$2/' *.jpg

Exemple:

$ rename -n 's/(.{10}).*(\.jpg)$/$1$2/' *.jpg
11512345714x611aaa.jpg -> 1151234571.jpg
1201230111FbcAdee.jpg -> 1201230111.jpg
1208605001abAcd.jpg -> 1208605001.jpg

L'option -n ne simule que la commande, ce qui vous permet de vérifier les modifications. Exécuter sans elle pour réellement apporter les modifications.

Le regex (.{10}).*(\.jpg) comprend:

  • .{10} - 10 caractères quelconques, dans un groupe (…), suivis de
  • .* - un nombre quelconque de caractères suivis de
  • \.jpg$ - l'extension à la fin ($) du nom du fichier, dans le deuxième groupe

Le remplacement $1$2 n'est que le premier groupe suivi du second.

16
muru

Vous pouvez faire avec seulement bash:

for FILE in *.jpg ; do mv "${FILE}" "${FILE:0:10}.jpg" ; done

Avec un peu de travail, vous pouvez obtenir une extension de fichier et l’ajouter automatiquement au nouveau nom.

3
Antonio

Si vous utilisez zsh:

zmv '(*).(*)' '${1:0:10}.$2'

Si ce n'est pas déjà fait, vous devrez peut-être d'abord exécuter:

autoload zmv
2
Kevin

Si vous souhaitez une version graphique, jetez un œil à pyRenamer, un puissant outil de changement de nom en bloc.

Logo for pyRenamer

pyRenamer a deux grands avantages. La première est que cela vous permet de faire un "et si", autrement dit de voir ce qui se passerait avant de vous engager dans le changement.

L'autre avantage est bien expliqué dans sa description:

Vous pouvez renommer des fichiers à l'aide de modèles, rechercher et remplacer des substitutions, insérer ou supprimer du texte, voire renommer des fichiers manuellement.

Vous pouvez également renommer des images à l'aide de leurs balises EXIF ​​et de la musique à l'aide de leurs balises internes.

Pour l'installer, utilisez Ubuntu Software Center ou votre installateur préféré, ou utilisez la ligne de commande pour lancer la commande suivante:

Sudo apt install pyrenamer
0
Paddy Landau