Besoin d'aide pour un script batch
Résolu
Utilisateur anonyme
-
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,
Je cherche à avoir un script qui fait les choses suivantes :
-Dans un répertoire pour tous les fichiers , on crée un répertoire du même nom que chaque fichier
-Chaque fichier est copié dans le répertoire créé portant le même nom
Par exemple dans un répertoire Images avec les fichiers:
Images/Photo1.jpg
Images/Photo2.jpg
On obtiendrait :
Images/Photo1/Photo1.jpg
Images/Photo2/Photo2.jpg
Je cherche à avoir un script qui fait les choses suivantes :
-Dans un répertoire pour tous les fichiers , on crée un répertoire du même nom que chaque fichier
-Chaque fichier est copié dans le répertoire créé portant le même nom
Par exemple dans un répertoire Images avec les fichiers:
Images/Photo1.jpg
Images/Photo2.jpg
On obtiendrait :
Images/Photo1/Photo1.jpg
Images/Photo2/Photo2.jpg
A voir également:
- Script batch utile
- Script vidéo youtube - Guide
- Fichier batch - Guide
- Mas script - Accueil - Windows
- Ghost script - Télécharger - Polices de caractères
- Batch converter - Télécharger - Photo & Graphisme
2 réponses
Salut,
tu pensais à quelque chose comme ça ?
;-) Flachy Joe ;-)
EDIT: correction d'un bug et suppression de l'extension dans le nom de repertoire
tu pensais à quelque chose comme ça ?
#!/bin/bash CD=$(pwd) #Le Répertoire courant files=$(find $CD -maxdepth 1 -type f) #Les fichiers du répertoire courant for f in $files #Boucles sur les fichiers do file=$(basename $f) #Nom du fichier new_rep=${file%\.*} #Sans extension mkdir ${CD}/${new_rep} #Création du répertoire mv $f ${CD}/${new_rep}/$file #Déplacement done;
;-) Flachy Joe ;-)
EDIT: correction d'un bug et suppression de l'extension dans le nom de repertoire
Bonjour,
Voilà qui devrait faire l'affaire :
@echo off
rem
rem Creation dossier puis deplacement fichier
rem
for /f %%A in ('dir "%CD%\*.*" /B') do (
if %%~xA NEQ .bat (mkdir "%CD%\%%~nA" & move "%CD%\%%A" "%CD%\%%~nA\%%A")
)
cls
echo.
echo ***** Operations terminees *****
echo.
echo.
echo.
pause
A noter que le fichier bat doit être placé dans le répertoire à traiter.
Tiens-moi au courant.
Voilà qui devrait faire l'affaire :
@echo off
rem
rem Creation dossier puis deplacement fichier
rem
for /f %%A in ('dir "%CD%\*.*" /B') do (
if %%~xA NEQ .bat (mkdir "%CD%\%%~nA" & move "%CD%\%%A" "%CD%\%%~nA\%%A")
)
cls
echo.
echo ***** Operations terminees *****
echo.
echo.
echo.
pause
A noter que le fichier bat doit être placé dans le répertoire à traiter.
Tiens-moi au courant.
c'est pas un script batch (ms-dos WINDOWS)