Outils du site

pratique:informatique:renom_lucio

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

pratique:informatique:renom_lucio [03/10/2017 13:57] (Version actuelle)
Ligne 1: Ligne 1:
 +====== Renommer un lot de lucios sous Ryzom ======
 +Ryzom enregistre les screenshots pris en jeu d'une façon très simple : ''​screenshotX.tga''​ (si vous avez choisi l'​option tga, qui est la meilleure qualité). Le X, c'est un chiffre, qui s'​incrémente à chaque fois dans le dossier. Problème si vous avez plusieurs ordis, ou que vous vider les dossiers dans d'​autres : vous vous retrouver avec plusieurs ''​screenshot001.tga''​.
  
 +Un petit script pour améliorer ça :
 +<​file>​
 +#!/bin/sh
 +racine=`pwd`;​
 +for dossier in $(find -type d); do
 +cd $dossier;
 +    for name in $(find screenshot*);​ do
 +            newname="​$(date -r $name +%y-%m-%d)_$(date +%H%M%S)_$(echo $name|sed "​s/​screenshot//"​)";​
 +            mv $name $newname;
 +    done
 +    cd $racine;
 +done
 +
 +</​file>​
 +
 +Enregistrer ça dans un fichier nommé ''​renom.sh''​ (par exemple), executable. Il suffit ensuite de se mettre dans le repertoire et de faire
 +
 +  sh ./renom.sh
 +  ​
 +Oui oui, vous savez, mais moi j'​oublie même ça :D
 +
 +Pour détailler un peu :
 +  for name in $(find screenshot*);​ do
 +permet de ne sélectionner que les fichiers commençant par "​screenshot"​ (utile pour ne pas renommer dossiers, scripts, etc...)
 +
 +  date -r $name +%y-%m-%d
 +Va extraire la date de dernière modification du fichier. Sur les screenshots,​ c'est la date de création. Pratique. La date est formaté année-mois-jour.
 +
 +  $(date +%H%M%S)
 +C'est une sécurité qui est sans doute en trop, pour éviter d'​avoir des renames semblables. Si le même jour, vous avez videz votre dossier screenshot (ou si vous avez deux clients), vous avez potentiellement deux screenshot0001.tga. Avec l'​heure en seconde de l'​execution du script, on a un chiffre qui différencie les deux, donc pas de risque d'​écrasement.
 +
 +  $(echo $name|sed "​s/​screenshot//"​)"​
 +on enlève le motif "​screenshot"​ dans le nom :D (le nom est déjà assez long, même si très identifiable)
 +
 +  mv $name $newname
 +Va appliquer le renommage. Si vous avez peur des bêtises, vous pouvez faire plutot la commande
 +  cp $name ./​rangement/​$newname
 +ce qui copiera les fichiers renommés dans le dossier rangement, en laissant les originaux dans le dossier de base. Mais pensez à créer un dossier "​rangement"​ avant sinon ça va râler :)
 +
 +Et il y a une boucle pour que ça fonctionne de façon récursive. Par contre ça bloque si les dossiers ont des espaces dans leur nom. La solution simple ? Renommer sans espace [[no_espace|grâce à ce script]] créé par Yannk.
 +
 +Merci à Glorf qui m'a aidé à écrire ça !
pratique/informatique/renom_lucio.txt · Dernière modification: 03/10/2017 13:57 (modification externe)