Copier n fois un fichier en gardant son nom
Résolu/Fermé
A voir également:
- Copier n fois un fichier en gardant son nom
- Fichier rar - Guide
- Comment réduire la taille d'un fichier - Guide
- Comment ouvrir un fichier epub ? - Guide
- Ouvrir un fichier .bin - Guide
- Comment ouvrir un fichier docx ? - Guide
8 réponses
barnabe0057
Messages postés
14454
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
30 novembre 2024
4 921
25 avril 2020 à 18:10
25 avril 2020 à 18:10
Bonjour,
Oui c'est très facile à faire, combien de copies te faut-il ?
Oui c'est très facile à faire, combien de copies te faut-il ?
barnabe0057
Messages postés
14454
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
30 novembre 2024
4 921
25 avril 2020 à 18:27
25 avril 2020 à 18:27
Voilà un exemple :
@echo off
setlocal enableextensions enabledelayedexpansion
chcp 1252 >nul
for %%A in (*.*) do (
for /L %%E in (1,1,10) do (
set index=00%%E
set index=!index:~-3!
copy "%%~fA" "%%~nA_!index!%%~xA"
)
)
pause
exit
La vache !!!
c'est fou ..
Merci beaucoup! Je suis espanté.
remarques :
-1 il fait aussi des copies du .bat , est ce normal?
-2 serait il possible d'avoir une explication des codes, si ce n'est pas trop ennuyeux pour vous ?
Encore MERCI
c'est fou ..
Merci beaucoup! Je suis espanté.
remarques :
-1 il fait aussi des copies du .bat , est ce normal?
-2 serait il possible d'avoir une explication des codes, si ce n'est pas trop ennuyeux pour vous ?
Encore MERCI
barnabe0057
Messages postés
14454
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
30 novembre 2024
4 921
Modifié le 25 avril 2020 à 18:50
Modifié le 25 avril 2020 à 18:50
1. je peux rajouter une condition pour le script lui-même
2. la première boucle FOR sert à traiter tous les fichiers, peu importe leur type (*.*)
La deuxième boucle FOR incrémente une valeur que l'on va ajouter au nom du fichier, je me sers de la variable index pour définir cette valeur sur 3 chiffres (d'abord j'ajoute deux 0 puis je découpe la variable pour ne garder que les trois derniers chiffres)
Concernant la ligne avec le COPY, j'utilise les variables de substitution de la boucle FOR :
%%~fA : chemin et nom du fichier
%%~nA : nom du fichier
%%~xA : extension du fichier
D'autres questions ?
2. la première boucle FOR sert à traiter tous les fichiers, peu importe leur type (*.*)
La deuxième boucle FOR incrémente une valeur que l'on va ajouter au nom du fichier, je me sers de la variable index pour définir cette valeur sur 3 chiffres (d'abord j'ajoute deux 0 puis je découpe la variable pour ne garder que les trois derniers chiffres)
Concernant la ligne avec le COPY, j'utilise les variables de substitution de la boucle FOR :
%%~fA : chemin et nom du fichier
%%~nA : nom du fichier
%%~xA : extension du fichier
D'autres questions ?
barnabe0057
Messages postés
14454
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
30 novembre 2024
4 921
>
barnabe0057
Messages postés
14454
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
30 novembre 2024
25 avril 2020 à 18:45
25 avril 2020 à 18:45
Voilà la version qui exclut le script de la copie :
@echo off
setlocal enableextensions enabledelayedexpansion
chcp 1252 >nul
for %%A in (*.*) do (
for /L %%E in (1,1,10) do (
set index=00%%E
set index=!index:~-3!
if not "%%~fA"=="%~f0" (copy "%%~fA" "%%~nA_!index!%%~xA")
)
)
pause
exit
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
La deuxième boucle FOR incrémente une valeur que l'on va ajouter au nom du fichier, je me sers de la variable index pour définir cette valeur sur 3 chiffres (d'abord j'ajoute deux 0 puis je découpe la variable pour ne garder que les trois derniers chiffres)
si je désire ne mettre que deux chiffres :
si je désire ne mettre que deux chiffres :
set index=00%%Eje mets donc un 2 à la place du 3 ?
set index=!index:~-2!
barnabe0057
Messages postés
14454
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
30 novembre 2024
4 921
25 avril 2020 à 19:54
25 avril 2020 à 19:54
Oui tout à fait.
Et bien voilà , que dire de plus, j'ai ce qu'il me faut.
Encore un grand merci pour ce partage.
bonne continuation et courage en ce moment.
Arvi
Encore un grand merci pour ce partage.
bonne continuation et courage en ce moment.
Arvi
barnabe0057
Messages postés
14454
Date d'inscription
lundi 2 mars 2009
Statut
Contributeur
Dernière intervention
30 novembre 2024
4 921
25 avril 2020 à 20:01
25 avril 2020 à 20:01
Merci bonne continuation également !
A bientôt peut-être.
A bientôt peut-être.