Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 1
Copier par type de fichier de C: vers Clé USB
Auteur Message
Répondre en citant
Message Copier par type de fichier de C: vers Clé USB 
Bonjour a vous.

Voicit un projet difficile a faire :

Créer un Batch/Utilitaire qui scanne au choix (doc, image, vidéo, audio) dans C: vers une clé USB

1 - Le Batch scanne quels sont les Lecteur Disponible dans le PC ( A: B: C: D: E: .... )

2 - Un Menu nous donne le choix de copier les fichier tout Type :

A -Document
B -Image ( Par Exemple pour les images on aurai DIR c:\ *.jpg, *.bmp )
C-Video
D-Audio


3 - Avoir les Fichier dans la cle USB ( car selon le poste ou l'ont se trouve les lecteur sont different... donc scanne les lecteur disponible)

4 - Fin duprogramme ou retour MENU

Bien sure faudrait exclure le SCAN & COPY dans le systeme Windows (systeme32, Programme Files...)

J'ai trouver se bout de Script :

Code:
@echo off
dir C:\users\le nom de l'utilisateur\pictures\*.jpg /s /b /a:-d > e:\liste_jpg.txt
for /f "tokens=*" %%i in ('more e:\liste_jpg.txt') do (copy /y "%%i" e:\aspirateur)

J'ai dut mettre e: car si je met C: sa ne fonctionne pas

Je n'est pas trouver ici ou ailleur se genre de Batch.
Merci d'avance Okay




______________________________________________________
Le Batch C'est Pas Pour Les Bitch's Smile
Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message Copier par type de fichier de C: vers Clé USB 
Salut,

ne serait il pas mieux de rechercher les (images/video/Audio) dans le dossier des utilisateurs en ignorant les dossiers comme (appdata,corbeille,etc).
un jolie petit travail de recherche !




______________________________________________________
Le chien a un maître, le chat un serviteur, l’ordinateur un esclave...
Répondre en citant
Message Copier par type de fichier de C: vers Clé USB 
Bonjour
si tu souhaites que quelqu'un le réalise pour toi ça demande beaucoup de travail.

Code:
Créer un Batch/Utilitaire qui scanne au choix (doc, image, vidéo, audio) dans C: vers une clé USB


Tu veux qu'un batch liste le contenu de chaque dossier défini.
Apparemment tu parles de pc tournant sous win vista ou win 7.

1. Le mieux est d'aller chercher les chemins via le registre

2. Créer un menu voila un début

CODE testé sous win xp : liste le contenu du dossier Mes Documents uniquement
Code:

@echo off
::source http://batch.xoo.it/t2260-Usb2Backup.htm


REM EXTRACTION MES DOCUMENTS VIA LE REGISTRE
FOR /F "TOKENS=2,*" %%I IN ('REG QUERY "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ^| FIND /I "Personal"') DO SET DOSS=%%J

REM EXTRACTION MES DOCUMENTS VIA LE REGISTRE
FOR /F "TOKENS=2,*" %%I IN ('REG QUERY "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ^| FIND /I "My Music"') DO SET MUSIC=%%J

REM EXTRACTION MES DOCUMENTS VIA LE REGISTRE
FOR /F "TOKENS=2,*" %%I IN ('REG QUERY "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ^| FIND /I "My Pictures"') DO SET IMAGES=%%J

REM EXTRACTION MES DOCUMENTS VIA LE REGISTRE
FOR /F "TOKENS=2,*" %%I IN ('REG QUERY "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ^| FIND /I "My Video"') DO SET VIDEO=%%J


:MENU
echo A. Document
echo B. Image
echo C. Video
echo D. Musique
echo Q. Quitter

set /p choix=[Choisir A,B,C,D,Q] :
if /i "%choix%"=="A" goto DOC
if /i "%choix%"=="B" goto IMG
if /i "%choix%"=="C" goto VID
if /i "%choix%"=="D" goto MUS
if /i "%choix%"=="Q" goto QUIT

IF NOT DEFINED %choix%" GOTO MENU

:DOC
REM EN STOCK LE CONTENU DE DOCUMENTS DANS UN FICHIER TEMPORAIRE
For /f %%i in ('Dir "%DOSS%" /b /a:-hd') do echo %%~i >> "fchlist.txt"

REM CREATION D UN MENU DYNAMIQUE LISTANT AVEC UN NUMERO LE CONTENU DU DOSSIER
echo :Debut> "setPdynmqu.bat"
echo Cls>> "setPdynmqu.bat"
echo echo.>> "setPdynmqu.bat"
For /f "tokens=1* delims=:" %%i In ('findstr /n /r . "fchlist.txt"') Do echo echo %%i - %%j>> "setPdynmqu.bat"
echo echo.>> "setPdynmqu.bat"
echo Set /p MenuDynamqSP=   Entrer un numéro [q pour Quitter]: >> "setPdynmqu.bat"
For /f "tokens=1,* delims=:" %%i In ('findstr /n /r . "fchlist.txt"') Do echo If %%MenuDynamqSP%%== %%i echo %%j^>^> "file.txt" >> "setPdynmqu.bat"
echo If %%MenuDynamqSP%%== q Goto Quite>> "setPdynmqu.bat"
echo Goto Debut>> "setPdynmqu.bat"
echo :Quite>> "setPdynmqu.bat"
Call "setPdynmqu.bat"
pause

:IMG
For /f %%i in ('Dir "%IMAGES%" /b /a:-hd') do echo %%~i >> "fchlist.txt"

REM CREATION D UN MENU DYNAMIQUE LISTANT AVEC UN NUMERO LE CONTENU DU DOSSIER
echo :Debut> "setPdynmqu.bat"
echo Cls>> "setPdynmqu.bat"
echo echo.>> "setPdynmqu.bat"
For /f "tokens=1* delims=:" %%i In ('findstr /n /r . "fchlist.txt"') Do echo echo %%i - %%j>> "setPdynmqu.bat"
echo echo.>> "setPdynmqu.bat"
echo Set /p MenuDynamqSP=   Entrer un numéro [q pour Quitter]: >> "setPdynmqu.bat"
For /f "tokens=1,* delims=:" %%i In ('findstr /n /r . "fchlist.txt"') Do echo If %%MenuDynamqSP%%== %%i echo %%j^>^> "file.txt" >> "setPdynmqu.bat"
echo If %%MenuDynamqSP%%== q Goto Quite>> "setPdynmqu.bat"
echo Goto Debut>> "setPdynmqu.bat"
echo :Quite>> "setPdynmqu.bat"
Call "setPdynmqu.bat"
pause

:VID
For /f %%i in ('Dir "%VIDEO%" /b /a:-hd') do echo %%~i >> "fchlist.txt"

REM CREATION D UN MENU DYNAMIQUE LISTANT AVEC UN NUMERO LE CONTENU DU DOSSIER
echo :Debut> "setPdynmqu.bat"
echo Cls>> "setPdynmqu.bat"
echo echo.>> "setPdynmqu.bat"
For /f "tokens=1* delims=:" %%i In ('findstr /n /r . "fchlist.txt"') Do echo echo %%i - %%j>> "setPdynmqu.bat"
echo echo.>> "setPdynmqu.bat"
echo Set /p MenuDynamqSP=   Entrer un numéro [q pour Quitter]: >> "setPdynmqu.bat"
For /f "tokens=1,* delims=:" %%i In ('findstr /n /r . "fchlist.txt"') Do echo If %%MenuDynamqSP%%== %%i echo %%j^>^> "file.txt" >> "setPdynmqu.bat"
echo If %%MenuDynamqSP%%== q Goto Quite>> "setPdynmqu.bat"
echo Goto Debut>> "setPdynmqu.bat"
echo :Quite>> "setPdynmqu.bat"
Call "setPdynmqu.bat"
pause


:MUS
For /f %%i in ('Dir "%MUSIC%" /b /a:-hd') do echo %%~i >> "fchlist.txt"

REM CREATION D UN MENU DYNAMIQUE LISTANT AVEC UN NUMERO LE CONTENU DU DOSSIER
echo :Debut> "setPdynmqu.bat"
echo Cls>> "setPdynmqu.bat"
echo echo.>> "setPdynmqu.bat"
For /f "tokens=1* delims=:" %%i In ('findstr /n /r . "fchlist.txt"') Do echo echo %%i - %%j>> "setPdynmqu.bat"
echo echo.>> "setPdynmqu.bat"
echo Set /p MenuDynamqSP=   Entrer un numéro [q pour Quitter]: >> "setPdynmqu.bat"
For /f "tokens=1,* delims=:" %%i In ('findstr /n /r . "fchlist.txt"') Do echo If %%MenuDynamqSP%%== %%i echo %%j^>^> "file.txt" >> "setPdynmqu.bat"
echo If %%MenuDynamqSP%%== q Goto Quite>> "setPdynmqu.bat"
echo Goto Debut>> "setPdynmqu.bat"
echo :Quite>> "setPdynmqu.bat"
Call "setPdynmqu.bat"
pause



:QUIT
ECHO MERCI
EXIT


là TU M'as perdu j ai rien compris

Citation:

3 - Avoir les Fichier dans la cle USB ( car selon le poste ou l'ont se trouve les lecteur sont different... donc scanne les lecteur disponible)

4 - Fin duprogramme ou retour MENU


tu veux scanner les dossiers sur le pc ou sur des supports amovibles ?
A mon avis scanner les dossiers du pc et les copier vers un support amovible le pb c'est de cibler le bon support amovible.

sinon mon projet il y a 5 ans était peut etre semblable à ce que tu souhaitais
http://batch.xoo.it/t2260-Usb2Backup.htm



Dernière édition par Laddy le Jeu 8 Nov 2012 - 16:39; édité 1 fois

______________________________________________________
Faites paraitre votre batch sur BatchClipboard
Visiter le site web du posteur
Répondre en citant
Message Copier par type de fichier de C: vers Clé USB 
Merci beaucoup Lady. Bon travail sa me plait Okay

Je regarderai ton projet aussi. Vivement que je me retrouve sur mon PC Razz




______________________________________________________
Le Batch C'est Pas Pour Les Bitch's Smile
Répondre en citant
Message Copier par type de fichier de C: vers Clé USB 
Correction des clés de registre et réduction du code, testé uniquement sous win 7 64bit
Code:
@echo off
::source http://batch.xoo.it/t2260-Usb2Backup.htm
 
 
REM EXTRACTION MES DOCUMENTS VIA LE REGISTRE
FOR /F "TOKENS=2,*" %%I IN ('REG QUERY "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ^| FIND /I "Personal"') DO SET DOSS=%%J
 
REM EXTRACTION MES DOCUMENTS VIA LE REGISTRE
FOR /F "TOKENS=3,*" %%I IN ('REG QUERY "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ^| FIND /I "My Music"') DO SET MUSIC=%%J
 
REM EXTRACTION MES DOCUMENTS VIA LE REGISTRE
FOR /F "TOKENS=3,*" %%I IN ('REG QUERY "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ^| FIND /I "My Pictures"') DO SET IMAGES=%%J
 
REM EXTRACTION MES DOCUMENTS VIA LE REGISTRE
FOR /F "TOKENS=3,*" %%I IN ('REG QUERY "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ^| FIND /I "My Video"') DO SET VIDEO=%%J
 


 
:MENU
echo A. Document
echo B. Image
echo C. Video
echo D. Musique
echo Q. Quitter
 
set /p choix=[Choisir A,B,C,D,Q] :
if /i "%choix%"=="A" goto DOC
if /i "%choix%"=="B" goto IMG
if /i "%choix%"=="C" goto VID
if /i "%choix%"=="D" goto MUS
if /i "%choix%"=="Q" goto QUIT
 
IF NOT DEFINED %choix%" GOTO MENU
 
:DOC
REM EN STOCK LE CONTENU DE DOCUMENTS DANS UN FICHIER TEMPORAIRE
For /f %%i in ('Dir "%DOSS%"  /b /a:-hd') do echo %%~i >> "fchlist.txt"
Call :MenuDynamique


 
:IMG
Echo %IMAGES%
For /f %%i in ('Dir "%IMAGES%" /b /a:-hd') do echo %%~i >> "fchlist.txt"
Call :MenuDynamique

 
:VID
For /f %%i in ('Dir "%VIDEO%" /b /a:-hd') do echo %%~i >> "fchlist.txt"
Call :MenuDynamique
 
 
:MUS
For /f %%i in ('Dir "%MUSIC%" /b /a:-hd') do echo %%~i >> "fchlist.txt"
Call :MenuDynamique

:MenuDynamique
echo :Debut> "%~dp0setPdynmqu.bat"
echo Cls>> "%~dp0setPdynmqu.bat"
echo echo.>> "%~dp0setPdynmqu.bat"
For /f "tokens=1* delims=:" %%i In ('findstr /n /r . "%~dp0fchlist.txt"') Do echo echo %%i - %%j>> "%~dp0setPdynmqu.bat"
echo echo.>> "%~dp0setPdynmqu.bat"
echo Set /p MenuDynamqSP=   Entrer un numéro [q pour Quitter]: >> "%~dp0setPdynmqu.bat"
For /f "tokens=1,* delims=:" %%i In ('findstr /n /r . "%~dp0fchlist.txt"') Do (
for /f "tokens=* delims:," %%b in ("%%MenuDynamqSP%%") do ( echo If %%MenuDynamqSP%%==%%i echo %%j))^>^> "file.txt" >> "%~dp0setPdynmqu.bat"
echo If %%MenuDynamqSP%%== q Goto Quite>> "%~dp0setPdynmqu.bat"
echo Goto Debut>> "%~dp0setPdynmqu.bat"
echo :Quite>> "%~dp0setPdynmqu.bat"
Call "%~dp0setPdynmqu.bat"
goto compression

:compression

pause
 
:QUIT
ECHO MERCI
EXIT





______________________________________________________
Faites paraitre votre batch sur BatchClipboard
Visiter le site web du posteur
Répondre en citant
Message Copier par type de fichier de C: vers Clé USB 
Shocked

C'est normale que sa ne copie aucun fichier ?

Car je n'est qu'un fichier Text qui me liste que les dossier.

En faite le Batch que je demande consiste a faire une sauvegarde de fichier avec si possible le choix des dossier (*.*) ou par type de fichier (*.jpg ; *.bmp ; *.png) (*.txt ; *.doc ; *.xls : *.pdf ; *.docx ; *.vba) (*.avi ; *.mpg4 ; *.mkv) (*.mp3 ; *.wma ; *.wave ; *.ogg)

Soit on utilise un Scan par type de fichier qui liste le résultat et commance la copie de sauvegarde.
Soit on utilise directement la copie de sauvegarde par type de fichier (All Type image) ou (All Type Document) ou (All Type Video) (All Type Audio)

Merci lady d'avoir prit en compte ma demande Okay




______________________________________________________
Le Batch C'est Pas Pour Les Bitch's Smile
Répondre en citant
Message Copier par type de fichier de C: vers Clé USB 
Oui normal c etait qu un début et vue mon activité professionnelle je naurai pas le temps de finir avant un moment, je suis surchargée de travail et je n ai pas la rapidité de codage de stryk ou darkbatcher, de plus je t ai donnée des elements afin de faire aussi des recherches sur le sujet.

le batch liste des dossiers.

Jai répondu qu à une partie de ta demande, le reste n etant pas clair que tu viens de rectifier.




______________________________________________________
Faites paraitre votre batch sur BatchClipboard
Visiter le site web du posteur
Répondre en citant
Message Copier par type de fichier de C: vers Clé USB 
Non vérifier

Code:

@echo off
::source http://batch.xoo.it/t2260-Usb2Backup.htm
 
 
REM EXTRACTION MES DOCUMENTS VIA LE REGISTRE
FOR /F "TOKENS=2,*" %%I IN ('REG QUERY "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ^| FIND /I "Personal"') DO SET DOSS=%%J
 
REM EXTRACTION MES DOCUMENTS VIA LE REGISTRE
FOR /F "TOKENS=3,*" %%I IN ('REG QUERY "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ^| FIND /I "My Music"') DO SET MUSIC=%%J
 
REM EXTRACTION MES DOCUMENTS VIA LE REGISTRE
FOR /F "TOKENS=3,*" %%I IN ('REG QUERY "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ^| FIND /I "My Pictures"') DO SET IMAGES=%%J
 
REM EXTRACTION MES DOCUMENTS VIA LE REGISTRE
FOR /F "TOKENS=3,*" %%I IN ('REG QUERY "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ^| FIND /I "My Video"') DO SET VIDEO=%%J
 
 
 
 
:MENU
CLS
echo A. Document
echo B. Image
echo C. Video
echo D. Musique
echo Q. Quitter
 
set /p choix=[Choisir A,B,C,D,Q] :
if /i "%choix%"=="A" goto DOC
if /i "%choix%"=="B" goto IMG
if /i "%choix%"=="C" goto VID
if /i "%choix%"=="D" goto MUS
if /i "%choix%"=="Q" goto QUIT
 
IF NOT DEFINED %choix%" GOTO MENU

:EXTENSION
rem

:DOC
REM EN STOCK LE CONTENU DE DOCUMENTS DANS UN FICHIER TEMPORAIRE
set EXT=doc,docx,txt,xls,pdf,^*
SET /P EXTCHOIX=[Quel type souhaites tu sauvegarder %EXT%] :
SET /p LECTEUR=[Lettre de votre stockage] :
For /f %%i in ('Dir "%DOSS%\*.%EXTCHOIX%"  /b /a:-d') do copy /y "%DOSS%\%%~i" "%LECTEUR%:"
PAUSE
goto MENU
 
 
 
:IMG
set EXT=jpg,png,gif,bmp,^*
SET /P EXTCHOIX=[Quel type souhaites tu sauvegarder %EXT%] :
SET LECTEUR=[Lettre de votre stockage] :
For /f %%i in ('Dir "%IMAGES%\*.%EXTCHOIX%" /b /a:-d') do copy /y "%IMAGES%\%%~i" "%LECTEUR%:"
PAUSE
goto MENU
 
 
:VID
set EXT=avi,mov,mp4,^*
SET /P EXTCHOIX=[Quel type souhaites tu sauvegarder %EXT%] :
SET LECTEUR=[Lettre de votre stockage] :
For /f %%i in ('Dir "%VIDEO%\*.%EXTCHOIX%" /b /a:-d') do copy /y "%VIDEO%\%%~i" "%LECTEUR%:"
PAUSE
goto MENU
 
:MUS
set EXT=mp3,ogg,aac,^*
SET /P EXTCHOIX=[Quel type souhaites tu sauvegarder %EXT%] :
SET LECTEUR=[Lettre de votre stockage] :
For /f %%i in ('Dir "%MUSIC%\*.%EXTCHOIX%" /b /a:-d') do copy /y "%MUSIC%\%%~i" "%LECTEUR%:"
PAUSE
goto MENU

:COPY
rem
pause
 
:QUIT
ECHO MERCI
EXIT


On peut automatiser la clé usb mais uniquement si celle ci possede un nom défini.
Exemple mes clés usb sont nommées différemment
l une se nomme rescueusb, l autre backup.

Ce qui donnerait

Code:
FOR %%A IN (C D E F G H I J K L M N O P Q R S T U V W X Y Z) DO IF EXIST %%A: (
FOR /F "TOKENS=*" %%B IN ('VOL %%A:^|FIND /I "RESCUEUSB"') DO ( SET LECT=%%A)
)
ECHO %LECT%




Dernière édition par Laddy le Sam 17 Nov 2012 - 09:39; édité 3 fois

______________________________________________________
Faites paraitre votre batch sur BatchClipboard
Visiter le site web du posteur
Répondre en citant
Message Copier par type de fichier de C: vers Clé USB 
Voila se que sa me dit :

Fichier introuvable Quand je selectionne une extention
Le fichier spécifier est introuvable Quand je selectionne *

Et donc ne spécifie aucunement un Lecteur de stockage, non plus.

J'ai effectuer se script la :


Code:
@echo off
type nul > e:\backup.txt
for %%a in (jpg png bmp) do (
for /f "tokens=*" %%b in ('dir /s /b c:\*.%%a') do (
copy "%%b" e:\
echo>>e:backup.txt "%%b"
)
)

pause

echo Merci

pause

exit


Ou celui la :

Code:
01. @echo off
02. type nul > c:\index\Jasper\backup.txt
03. for %%a in (doc xls ppt pst pab) do (
04.     for /f "tokens=*" %%b in ('dir /s /b c:\*.%%a') do (
05.         copy "%%b" z:\home\backup
06.         echo>>c:\index\Jasper\backup.txt "%%b"
07.     )
08. )


Certe sa ne vaut pas un menu selectif.....mais Bon passage en édit obligatoire pour l'adaptation.




______________________________________________________
Le Batch C'est Pas Pour Les Bitch's Smile
Répondre en citant
Message Copier par type de fichier de C: vers Clé USB 
MrRomeo a écrit:
Voila se que sa me dit :

Fichier introuvable Quand je selectionne une extention
Le fichier spécifier est introuvable Quand je selectionne *

Et donc ne spécifie aucunement un Lecteur de stockage, non plus.

j ai du mal à te suivre car le code donné n indique aucun choix sur lextension et les chemins ne sont pas correctes
tu lui demandes de copier toute extension trouvée, et il y a des fautes de syntaxes.

type nul > e:\backup.txt inutile à quoi ça sert ?
echo>>e:backup.txt "%%b" mauvaise syntaxe

dans ton code ta boucle tu n indiques pas le chemin de %%b

code non testé juste corrigé
Code:
@echo off
for %%a in (jpg png bmp) do (
for /f "tokens=*" %%b in ('dir /s /b c:\*.%%a') do (
copy "C:\%%b" "e:\"
echo c:\%%b>>e:\backup.txt
)
)

pause

echo Merci

pause

exit


le mieux aurait été de tester mon code....pour voir si il fonctionnait




______________________________________________________
Faites paraitre votre batch sur BatchClipboard
Visiter le site web du posteur
Répondre en citant
Message Copier par type de fichier de C: vers Clé USB 
Code vérifié - Ok sous win 7 64bit

Code:

@echo off
::source http://batch.xoo.it/t2260-Usb2Backup.htm
 
 
REM EXTRACTION MES DOCUMENTS VIA LE REGISTRE
FOR /F "TOKENS=2,*" %%I IN ('REG QUERY "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ^| FIND /I "Personal"') DO SET DOSS=%%J
 
REM EXTRACTION MES DOCUMENTS VIA LE REGISTRE
FOR /F "TOKENS=3,*" %%I IN ('REG QUERY "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ^| FIND /I "My Music"') DO SET MUSIC=%%J
 
REM EXTRACTION MES DOCUMENTS VIA LE REGISTRE
FOR /F "TOKENS=3,*" %%I IN ('REG QUERY "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ^| FIND /I "My Pictures"') DO SET IMAGES=%%J
 
REM EXTRACTION MES DOCUMENTS VIA LE REGISTRE
FOR /F "TOKENS=3,*" %%I IN ('REG QUERY "HKCU\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Folders" ^| FIND /I "My Video"') DO SET VIDEO=%%J
 
 
 
 
:MENU
cls
echo A. Document
echo B. Image
echo C. Video
echo D. Musique
echo Q. Quitter
 
set /p choix=[Choisir A,B,C,D,Q] :
if /i "%choix%"=="A" goto DOC
if /i "%choix%"=="B" goto IMG
if /i "%choix%"=="C" goto VID
if /i "%choix%"=="D" goto MUS
if /i "%choix%"=="Q" goto QUIT
 
IF NOT DEFINED %choix%" GOTO MENU

:EXTENSION
rem

:DOC
REM ajouter des extensions si besoin
set EXT=doc,docx,txt,xls,pdf,^*
SET /P EXTCHOIX=[Quel type souhaites tu sauvegarder %EXT%] :
SET /p LECTEUR=[Lettre de votre stockage sans les points] :
For /f %%i in ('Dir "%DOSS%\*.%EXTCHOIX%"  /b /a:-d') do (
copy /y "%DOSS%\%%i" "%LECTEUR%:" 2>NUL
ECHO "%DOSS%\%%i"  >> "%LECTEUR%:\backup.txt"
)
PAUSE
goto MENU
 
 
 
:IMG
set EXT=jpg,png,gif,bmp,^*
SET /P EXTCHOIX=[Quel type souhaites tu sauvegarder %EXT%] :
SET /p LECTEUR=[Lettre de votre stockage sans les points] :
For /f %%i in ('Dir "%IMAGES%\*.%EXTCHOIX%" /b /a:-d') do (
copy /y "%IMAGES%\%%~i" "%LECTEUR%:" 2>NUL
ECHO "%IMAGES%\%%i"  >> "%LECTEUR%:\backup.txt"
)
PAUSE
goto MENU
 
 
:VID
set EXT=avi,mov,mp4,^*
SET /P EXTCHOIX=[Quel type souhaites tu sauvegarder %EXT%] :
SET /p LECTEUR=[Lettre de votre stockage sans les points] :
For /f %%i in ('Dir "%VIDEO%\*.%EXTCHOIX%" /b /a:-d') do (
copy /y "%VIDEO%\%%~i" "%LECTEUR%:" 2>NUL
ECHO "%VIDEO%\%%i"  >> "%LECTEUR%:\backup.txt"
)
PAUSE
goto MENU
 
:MUS
set EXT=mp3,ogg,aac,^*
SET /P EXTCHOIX=[Quel type souhaites tu sauvegarder %EXT%] :
SET /p LECTEUR=[Lettre de votre stockage sans les points] :
For /f %%i in ('Dir "%MUSIC%\*.%EXTCHOIX%" /b /a:-d') do (
copy /y "%MUSIC%\%%~i" "%LECTEUR%:" 2>NUL
ECHO "%MUSIC%\%%i"  >> "%LECTEUR%:\backup.txt"
)
PAUSE
goto MENU

:COPY
rem
pause
 
:QUIT
ECHO MERCI
EXIT





______________________________________________________
Faites paraitre votre batch sur BatchClipboard
Visiter le site web du posteur
Répondre en citant
Message Copier par type de fichier de C: vers Clé USB 
Super sa fonctionne sauf dans les sous répertoire source. Shocked

Donc je me suit permit avec une adaptation mais la source de base reste C:\ (je ne sait quelle script ajouter pour définir au choix une source de base)

Code:
@echo off
 
 
 
 
 
:MENU
cls
echo A. Document
echo B. Image
echo C. Video
echo D. Musique
echo Q. Quitter
 
set /p choix=[Choisir A,B,C,D,Q] :
if /i "%choix%"=="A" goto DOC
if /i "%choix%"=="B" goto IMG
if /i "%choix%"=="C" goto VID
if /i "%choix%"=="D" goto MUS
if /i "%choix%"=="Q" goto QUIT
 
IF NOT DEFINED %choix%" GOTO MENU

:EXTENSION
rem

:DOC
REM ajouter des extensions si besoin
set EXT=doc,docx,txt,xls,pdf,^*
SET /P EXTCHOIX=[Quel type souhaites tu sauvegarder %EXT%] :
SET /p LECTEUR=[Lettre de votre stockage sans les points] :
type nul > %LECTEUR%:\backup.txt
for %%a in (%EXTCHOIX%) do (
for /f "tokens=*" %%b in ('dir /s /b c:\*.%%a') do (
copy "%%b" %LECTEUR%:\
echo>>%LECTEUR%:\backup.txt "%%b"
)
)
PAUSE
goto MENU
 
 
 
:IMG
set EXT=jpg,png,gif,bmp,^*
SET /P EXTCHOIX=[Quel type souhaites tu sauvegarder %EXT%] :
SET /p LECTEUR=[Lettre de votre stockage sans les points] :
type nul > %LECTEUR%:\backup.txt
for %%a in (%EXTCHOIX%) do (
for /f "tokens=*" %%b in ('dir /s /b c:\*.%%a') do (
copy "%%b" %LECTEUR%:\
echo>>%LECTEUR%:\backup.txt "%%b"
)
)
PAUSE
goto MENU
 
 
:VID
set EXT=avi,mov,mp4,^*
SET /P EXTCHOIX=[Quel type souhaites tu sauvegarder %EXT%] :
SET /p LECTEUR=[Lettre de votre stockage sans les points] :
type nul > %LECTEUR%:\backup.txt
for %%a in (%EXTCHOIX%) do (
for /f "tokens=*" %%b in ('dir /s /b c:\*.%%a') do (
copy "%%b" %LECTEUR%:\
echo>>%LECTEUR%:\backup.txt "%%b"
)
)
PAUSE
goto MENU
 
:MUS
set EXT=mp3,ogg,aac,^*
SET /P EXTCHOIX=[Quel type souhaites tu sauvegarder %EXT%] :
SET /p LECTEUR=[Lettre de votre stockage sans les points] :
type nul > %LECTEUR%:\backup.txt
for %%a in (%EXTCHOIX%) do (
for /f "tokens=*" %%b in ('dir /s /b c:\*.%%a') do (
copy "%%b" %LECTEUR%:\
echo>>%LECTEUR%:\backup.txt "%%b"
)
)
PAUSE
goto MENU

:COPY
rem
pause
 
:QUIT
ECHO MERCI
EXIT





______________________________________________________
Le Batch C'est Pas Pour Les Bitch's Smile
Répondre en citant
Message Copier par type de fichier de C: vers Clé USB 
ton script ne fonctionne pas vue que tu reproduis les memes erreurs de base que précédemment....

pour le moment mon script ne fait que lecteur C et uniquement les répertoires Mes documents, ma musique, mes videos, mes images avec les fichiers à la racine de ceux ci.
il ne fait pas les sous dossiers.

Si les noms de fichiers sont identitiques, la copie va écraser ceux précédemment, et meme si différents.
il faut un peu de logique dans un script de cet ampleur. ce qui est dans des dossiers doivent rester dans des dossiers et qu il soit bien nommé.......


Vue que tu l'adaptes je te laisses chercher les réponses étant sur le forum pour la pluspart et corrigé les erreurs.




______________________________________________________
Faites paraitre votre batch sur BatchClipboard
Visiter le site web du posteur
Répondre en citant
Message Copier par type de fichier de C: vers Clé USB 
Je trouve normal de mettre ma part dans se batch, car sa me gêne d'avoir du tout fait..... sans contribution.

C'est vrais j'aurai du penser au nom identique.

Au départ j'hésité entre copy et xcopy. Mais je n'est pas le choix pour la recherche dans les dossiers système car il n'existe pas que "mes documents" pour les fichier. Certain poste on un répertoire c:\toto\titi






______________________________________________________
Le Batch C'est Pas Pour Les Bitch's Smile
Répondre en citant
Message Copier par type de fichier de C: vers Clé USB 
Tu connais tes besoins ce qui n'est pas mon cas, tu as une base de travail maintenant si tu veux modifier libre à toi , je m'arrete ici afin de ne pas perdre de temps.

Sur le forum tu trouveras des éléments qui t aideront dans ton projet.

Set /p -> pour demander quelque chose.

copy ne copie que les fichiers
xcopy copie les fichiers et dossiers
et il y a une commande externe développé par cautex -> cp




______________________________________________________
Faites paraitre votre batch sur BatchClipboard
Visiter le site web du posteur
Message Copier par type de fichier de C: vers Clé USB 


Montrer les messages depuis:
Répondre au sujet Page 1 sur 1
  



Index | créer un forum | Forum gratuit d’entraide | Annuaire des forums gratuits | Signaler une violation | Conditions générales d'utilisation
Copyright 2008 - 2016 // Batch