Renommer des chansons
Résolu
DelNC
Messages postés
2234
Date d'inscription
Statut
Membre
Dernière intervention
-
barnabe0057 Messages postés 14455 Date d'inscription Statut Contributeur Dernière intervention -
barnabe0057 Messages postés 14455 Date d'inscription Statut Contributeur Dernière intervention -
Bonjour à tous & toutes
J'ai retrouvé des dossiers de chansons.
Elles sont classées par artistes.
Dans le nom des chansons, il y a bien le titre mais pas l'artiste.
J'essaye de faire en sorte que les chansons soient nommées comme ceci:
artiste : titre
J'ai déjà fait un script en .bat qui ajoute le nom de l'artiste mais je suis obligée de la mettre en dur dans le script
exemple
Je n'arrive pas à trouver comment récupérer la variable du dossier.
Si vous avez des pistes à me donner, ça serait sympa
Je vous remercie d'avance d l'aide que vous m'apporteraz
J'ai retrouvé des dossiers de chansons.
Elles sont classées par artistes.
Dans le nom des chansons, il y a bien le titre mais pas l'artiste.
J'essaye de faire en sorte que les chansons soient nommées comme ceci:
artiste : titre
J'ai déjà fait un script en .bat qui ajoute le nom de l'artiste mais je suis obligée de la mettre en dur dans le script
exemple
@echo off setlocal enabledelayedexpansion chcp 1252 for /r "C:\Users\Delphine\Music\Anglais\U2" %%a in (*.mp3) do ( set "file=U2 - %%~nxa" move /y "%%~a" "%%~dpa!file!" ) pause
Je n'arrive pas à trouver comment récupérer la variable du dossier.
Si vous avez des pistes à me donner, ça serait sympa
Je vous remercie d'avance d l'aide que vous m'apporteraz
A voir également:
- Renommer des chansons
- Renommer des fichiers en masse - Guide
- Télécharger paroles chansons gratuit - Télécharger - Vie quotidienne
- Renommer iphone - Guide
- Comment renommer quelqu'un sur instagram - Guide
- 800 chansons des années 80 mp3 download - Forum Téléchargement
2 réponses
Voilà le script complet :
Tu n'as rien à modifier, juste à copier-coller.
Tu peux changer la variable cible si tu veux traiter un autre dossier.
@echo off
Setlocal EnableExtensions EnableDelayedExpansion
chcp 28591 >nul
set cible=%USERPROFILE%\Music
cd /d %cible% || exit /b 1
for /f "delims=" %%A in ('2^>nul dir /b /s /a-d') do (
echo. & call :fonction "%%~pA"
ren "%%~A" "!artiste! - %%~nxA" >nul && echo ### %%~nxA ==^>^> !artiste! - %%~nxA
)
pause
exit /b 0
:fonction
set "chemin=%~1"
for /L %%E in (2,1,255) do (
set "dossier=!chemin:~-%%E!"
if "!dossier:~0,1!"=="\" (set "artiste=!dossier:\=!" & goto :eof)
)
goto :eof
Tu n'as rien à modifier, juste à copier-coller.
Tu peux changer la variable cible si tu veux traiter un autre dossier.
Bonjour,
Voilà une partie de la solution :
Le script liste tous les fichiers dans tous les sous-dossiers, et la fonction récupère le nom du dossier parent de chaque fichier.
Tu n'as plus qu'à rajouter une ligne pour renommer le fichier à ta guise.
Voilà une partie de la solution :
@echo off
Setlocal EnableExtensions EnableDelayedExpansion
set cible=%USERPROFILE%\Music
cd /d %cible%
for /f "delims=" %%A in ('dir /b /s /a-d "*.mp3"') do (
call :fonction "%%~pA"
echo %%~nxA ### !artiste! #
)
pause
exit
:fonction
set chemin=%~1
for /L %%E in (2,1,255) do (
set dossier=!chemin:~-%%E!
set delimiteur=!dossier:~0,1!
if "!delimiteur!"=="\" (
set artiste=!dossier:~1!
set artiste=!artiste:\=!
goto :eof
)
)
goto :eof
Le script liste tous les fichiers dans tous les sous-dossiers, et la fonction récupère le nom du dossier parent de chaque fichier.
Tu n'as plus qu'à rajouter une ligne pour renommer le fichier à ta guise.
Merci beaucoup barnabe0057
Grace à toi je n'ai pas a faire mon ancien script pour tous les dossiers.