Batch Index du Forum
S’enregistrerRechercherFAQMembresGroupesConnexion
Répondre au sujet Page 1 sur 4
Aller à la page: 1, 2, 3, 4  >
[Final][EXE] Cp: utilitaire de traitement d'arborescence de dossiers - Cautex
Auteur Message
Répondre en citant
Message [Final][EXE] Cp: utilitaire de traitement d'arborescence de dossiers - Cautex 
Salut à tous!

Sa remonte à une de mes premières idées ou je voulais une barre d'avancement sur les copies mais à ce moment là je n'était pas encore capable de réaliser ce batch. Je tien d'ailleurs à remercier les auteurs de ce forum et aussi certains contributeurs à qui j'ai repris certains de leurs code comme stryk, carlos, et quelques autres.

Compatibilité:
-Développé sous windows 7
-à vérifier sous vista, 2003.
-version 1.a.0000 testé et validé pour XP.
-version 1.h.0000 validé en mode copie sur 2003 serveur.

Présentation:
-mode copie/déplacement:
Cette commande externe de copie/déplacement d'arborescence de dossier propose des options de copie en mode synchronisation, c'est à dire qu'elle remplace les fichiers existants que si la source est différente ou plus récente que le fichier de destination. Il est possible d'afficher une progression par fichier en plus de la progression générale.

-mode sauvegarde:
Le mode sauvegarde vous permet de faire des sauvegarde de dossier complète puis incrémentielle ou différentielle. Vous pouvez supprimer automatiquement les dossiers d'archive en fonction de leur ancienneté ou faire en sorte d'avoir une seul archive. Vous pouvez générer des rapports et des log détaillé d'erreur et même les envoyer par e-mail. Fonctionne en local et SMB.

-mode conversion/redimensionnement/compression d'images:
Ce mode permet de traiter des dossiers contenant des images pour les formater en fonction de vos besoins. Il est possible de configurer les dimensions max en pixel, la taille max en Ko, l’extension de sortie pour la conversion, choisir les extensions d'image traité, appliqué un filtre sur le chemin complet du fichier.

-mode traitement audio/vidéo:
Ce mode vous propose de traiter des fichiers audio/vidéos avec ffmpeg. vous pourrez donc profiter de la puissance de celui-ci couplé avec les avantages de l'utilitaire cp.
Si les options intégré de cp ne vous suffisent pas, il est possible de passer en mode manuel et de définir sois-même les paramètres à appliquer à ffmpeg.
Les principales options sont: temps de départ, durée, nombre de trheads
audio: flux en kbit/s, nombre de canaux, fréquence, qualité en pourcentage, volume, synchronisation
vidéo: désactivation audio, désactivation vidéo, flux, résolution, images/s, aspect (16:9,4:3), rognage des bord

-les avantages de Cp:
Il est possible de personnaliser l'affichage dans la fenêtre et dans la barre de titre via plusieurs modes prédéfini et de modifier la taille de la barre de pourcentage. On peut générer des rapport et des log d'erreur personnalisable; envoyer des mails contenant un fichier spécifique ou les rapports générés; gérer des fichiers caché, appliquer des filtres; configurer un message windows en fin d'instance;...

A savoir:
-[Affichage] Le pourcentage et donc la barre d'avancement sont calculés sur la taille des fichiers et ignore les fichiers de moins de 1ko.
-[fonctionnement] La commande ne prend pas en charge les caractères suivant dans les nom de dossier/fichiers: "!" (il générera une erreur)
-[fonctionnement] syntaxe de commande à utiliser dans vos batch=cmd.exe /C ""%WinDir%\cp.bat" "src" "dst" paramètres"
-[fonctionnement] Pour que le batch fonctionne, le contrôle de compte utilisateur doit être désactivé [vista/seven].


Installation
1:Télécharger le batch via le lien de téléchargement ci-dessous
2:Executer ce batch (vous devrez peut-être l’exécuter en admin)
3:il va télécharger le fichier "cp.bat" dans le dossier "%Windir%" ou de manière générale "C:\Windows"
(pour vista/seven le contrôle de compte utilisateur doit être désactivé)
4:Quand il à bien téléchargé le batch il vous affiche l'aide de celui-ci

Utilisation
Maintenant que le fichier "cp.bat" se trouve dans votre dossier Windows; vous pouvez l'utiliser. Pour cela, rien de plus simple, ouvrez une fenêtre CMD (touches Windows+R > tapez cmd > cliquez sur ok).
Pour afficher l'aide, tapez "cp /?" ou juste "cp" normalement sa affiche la fenêtre d'aide principale de cp.
Pour copier le contenu d'un dossier vers un autre tapez simplement "cp c:\dossier1 d:\dossier2"
Pour déplacer le contenu d'un dossier vers un autre tapez simplement "cp c:\dossier1 d:\dossier2 -mode-2"
Toutes les information pour utiliser les paramètres à passer à cp sont décrites dans l'aide ("cp /?").


[21/06/11] -version- 1.a.0000
[30/06/11] -version- 1.d.0000 :
-mode purge -> possibilité de faire une copie/synchronisation en miroir.
-Affichage dans le rapport de la durée de copie au format: HH Heure MM Minute SS Seconde CC Centième .
-Possibilité d'afficher une progress_bar par fichier (uniquement via fenêtre différente) et activable selon une taille de fichier minimum.
[07/07/11] -version- 1.f.0000 :
-possibilité de gérer les fichiers cachés.
-possibilité d'afficher une progressbar par fichier directement dans la fenêtre batch ! (commande externe robocopy.exe requise:Version 1.96 optimisé pour ce batch).
[15/07/11] -version- 1.g.0003 :
-possibilité de sauvegarder un dossier de manière incrémentielle(création de dossier de sauvegarde complète puis dossier de sauvegarde incrémentielle pour fichier nouveau ou modifié)
-possibilité d'archiver la sauvegarde au bout de n dossier de sauvegarde existant.
-possibilité de supprimer les archives avant l'archivage.
[18/07/11] -version- 1.h.0000 :
- gestion des fichiers caché compatible en mode sauvegarde.
- mode sauvegarde différentielle (fichier nouveau ou modifié par rapport à la sauvegarde complète, ignore les sauvegardes intermédiaire)
- possibilité de supprimer les dossiers d'archive et de sauvegarde vieux de plus de n jours en fonction de la date de création ou de modification.
- correction de bugs
- Détection de mise à jour dans l'aide (commande [ "cp.bat" /ex ])
[21/07/11] -version- 1.i.0000 :
- possibilité d'envoyer le rapport par mail.
- le comportement de plusieurs fonctions ont été amélioré.
[02/08/11] -version- 1.j.0000 :
- mise a jour automatique du batch via la commande [cp.bat /maj]
- possibilité d'envoyer un mail avec le contenu d'un fichier (ex:rapport.txt) comme texte du message, peut donc éviter d'envoyer plusieurs mails à la fois.
- ajout d'options diverses
- correction d'un bug pour l'option de purge d'archive sur date de modification.
[09/08/11] -version- 1.k.0000 :
-amélioration du temps de traitement pour les connexion bas débit.
-téléchargement et installation automatique de robocopy si le batch en a besoin et qu'il n'est pas présent.
-autres améliorations mineur.
[23/08/11] -version- 2.a.0000 :
- optimisation de la structure du batch
- correction de bug mineur
- ajout du mode de traitement d'image
- amélioration de la syntaxe des paramètres (ancienne syntaxe toujours compatible)
- optimisation conséquente pour le traitement de fichier via dossier réseau.
[12/09/11] -version- 2.b.0000 :
- possibilité de créer un fichier de configuration externe pour l'utilisateur en cours ou pour tous les utilisateurs.
- possibilité de gérer les fichiers cachés + système.
- initialisation plus rapide et optimisation de la fonction purge.
[30/09/11] -version- 2.c.0000 :
-résolution d'un bug d'affichage du pourcentage (bug de la commande "set /a")pour les traitements au dessus d'une vingtaine de gigaoctets environ (n’altère pas le fonctionnement)
-ajout d'une animation graphique.
-ajout de l'option "cp /m" (et regroupement des extensions dans un seul dossier)
-optimisations du code et améliorations diverses sur le fonctionnement de certaines commandes.
[28/10/11] -version- 3.a.0000 :
-nouveau mode pour conversion de fichiers vidéos (avi-wmv-flv-mov-mp4-etc...) et audio (mp3-ogg-wma-ac3-wav-mpeg4)
-rognage des contours, temps de départ pour la conversion,durée, qualité, nombre de threads,etc...
-gestion d'instances multiple
-possibilité de charger un fichier de configuration spécifique
-possibilité de détruire l'arborescence des dossiers
-affichage de la boucle principale plus stable
[14/11/11] -version- 3.a.0013 :
-Gestion plus poussée des erreurs: le batch retournera un code erreur spécifique avec errorlevel
-Augmentation du nombre de paramètres permis.
-Améliorations multiples.

(les mises à jours mineurs ne sont pas mentionné)


Arcticle sur Cp

En projet/développement: (vos idées sont les bienvenue)
-aucun


__________________affichage en mode traitement d'image______________________________affichage en mode copie avec progressbar par fichier




Code:

@echo off
set serveur=batchutopia.myds.me
echo importation des informations pour le t‚l‚chargement...
set version_maj=
call:import_page "http://%serveur%/batch/cp/lastversion" echo>>tmp1.vbs
tmp1.vbs
echo. >"%windir%\test_acces"
if not exist "%windir%\test_acces" (echo.&echo Erreur d'acces en ecriture au dossier "%windir%".&echo Merci de verifier votre controle de compte utilisateur&echo panneau de configuration^>Comptes utilisateurs^>Modifier les parametres du controle de compte utilisateurs&echo Vous devrez redemarrer votre ordinateur pour appliquer cette modification&del tmp1.vbs&del tmp.log&pause&exit) Else del "%windir%\test_acces"
cls
for /f "tokens=1,2" %%i in ('type tmp.log') do set version_maj=%%i&set date_maj=%%j
if "%version_maj%"=="" echo impossible de contacter le serveur.v‚rifiez votre connexion internet ou signalez ce probleme sur http://batch.xoo.it/t2113-commande-externe-xcopy-revisitee.htm&del tmp1.vbs&del tmp.log&pause&exit
if exist "%windir%\cp.bat" echo cp.bat existe&del tmp1.vbs&del tmp.log&pause&exit
echo ce batch va t‚l‚charger et placer le fichier cp.bat dans le dossier %windir%.
echo.
echo version qui va etre install‚: %version_maj%
echo Date de la version: %date_maj%
echo.
pause
cls&echo Traitement en cours.
call:deploy_download "http://%serveur%/batch/cp/%version_maj%/cp.bat" "%windir%\cp.bat"
tmp.vbs
cls&echo Traitement en cours..
call:import_page "http://%serveur%/log/index.php?var1=download_%version_maj%" echo>>tmp1.vbs
tmp1.vbs
cls
if exist "%windir%\cp.bat" (
msg * "%windir%\cp.bat" … bien ‚t‚ install‚. N'h‚sitez pas … donner votre avis sur le forum ou signalez un probleme avec l'utilisation de ce batch.
start "cp.bat" "%windir%\cp.bat"
del tmp1.vbs&del tmp.log&del tmp.vbs
exit
)
echo r‚sultat:echec
pause
del tmp1.vbs&del tmp.log&del tmp.vbs
exit

:deploy_download
(echo src = "%~1"
echo Set v1 = CreateObject ("MSXML2.XMLHTTP"^)
echo Set v2  = CreateObject ("ADODB.Stream"^)
echo v1.open "GET", src, false
echo v1.send (^)
echo v2.open
echo v2.Type = 1
echo v2.Write v1.ResponseBody
echo v2.SaveToFile "%~2") >tmp.vbs
goto:eof

:import_page
%2 sData = GetXml("%~1" )
%2 sData = HtmlToText(sData)
%2 WriteFile "tmp.log", sData
%2 Function HtmlToText(sHtml)
%2 With CreateObject("htmlfile" )
%2 .Write sHtml
%2 On Error Resume Next
%2 HtmlToText = .body.innertext
%2 End With
%2 End Function
%2 Function GetXml(sURL)
%2 Dim Xml
%2 Set Xml = CreateObject("Microsoft.XMLHTTP" )
%2 Xml.Open "GET", sURL
%2 Xml.send
%2 Do^: wscript.sleep 10^: Loop While Xml.ReadyState ^<^ 4
%2 GetXml = Xml.responseText
%2 End Function
%2 Sub WriteFile(FilePath, sData)
%2 With CreateObject("Scripting.FileSystemObject" ).OpenTextFile(FilePath, 2, true)
%2 .Write sData: .Close
%2 End With
%2 End Sub
goto:eof

(c'est un faux-positif si votre antivirus se déclenche)

ps: je ne met que le code du batch d'installation car l'autre fait plus de 2000 lignes et est régulièrement mis à jour.



Dernière édition par Cαutex le Ven 5 Sep 2014 - 17:34; édité 113 fois

______________________________________________________
Mes principales réalisations: Cp (batch) et IPSvc (autoit)
Message Publicité 
PublicitéSupprimer les publicités ?


Répondre en citant
Message [Final][EXE] Cp: utilitaire de traitement d'arborescence de dossiers - Cautex 
Toi, j'aime bien ta façon de coder Wink



MSN
Répondre en citant
Message [Final][EXE] Cp: utilitaire de traitement d'arborescence de dossiers - Cautex 
Bien joué !




______________________________________________________
http://www.YagoServer.net/
Visiter le site web du posteur Yahoo Messenger Skype
Répondre en citant
Message [Final][EXE] Cp: utilitaire de traitement d'arborescence de dossiers - Cautex 
Up !

version 1.d.0000 disponible




______________________________________________________
Mes principales réalisations: Cp (batch) et IPSvc (autoit)
Répondre en citant
Message [Final][EXE] Cp: utilitaire de traitement d'arborescence de dossiers - Cautex 
ça à l'air pas mal Very Happy Il y en a besoin dans mon logiciel batch de sauvegarde système, je te metterait dans les crédits ;D




______________________________________________________
... L'orage éclate ...
... LINUX est né ! ...
... Adieu Windows...
Qu'il aille au nether! (Dans minecraft (rigole))
Répondre en citant
Message [Final][EXE] Cp: utilitaire de traitement d'arborescence de dossiers - Cautex 
Up !

version 1.f.0000 disponible !




______________________________________________________
Mes principales réalisations: Cp (batch) et IPSvc (autoit)
Répondre en citant
Message [Final][EXE] Cp: utilitaire de traitement d'arborescence de dossiers - Cautex 
Bonjour,

Il faut dire merci avant de voir le code Question



Répondre en citant
Message [Final][EXE] Cp: utilitaire de traitement d'arborescence de dossiers - Cautex 
Hello
Bravo a toi Shocked
Je vais peut être l'utilisé dans un de mes programmes que je suis entrin de codé Smile
En tout cas Merci a toi ! Wink
£`/@]




______________________________________________________


*Si l'erreur est humaine c'est parce que l'humanité en est une.*

£'/@] - Anciennement rekaca
MSN Skype
Répondre en citant
Message [Final][EXE] Cp: utilitaire de traitement d'arborescence de dossiers - Cautex 
temp a écrit:
Bonjour,

Il faut dire merci avant de voir le code Question



tu peut dire ce que tu veux^^




______________________________________________________
Mes principales réalisations: Cp (batch) et IPSvc (autoit)
Répondre en citant
Message [Final][EXE] Cp: utilitaire de traitement d'arborescence de dossiers - Cautex 
Ton script gagnerait à être simplifié, je trouve, sans vouloir t'offenser, que c'est un peu brouillon et trop long pour ce que c'est censé faire. Aussi, quand tu croules sous un nombre de paramètres trop importants, n'oublie pas qu'il existe la commande "shift", qui peut rendre de bon service.

Bonne continuation. Wink



Répondre en citant
Message [Final][EXE] Cp: utilitaire de traitement d'arborescence de dossiers - Cautex 
temp a écrit:
Ton script gagnerait à être simplifié, je trouve, sans vouloir t'offenser, que c'est un peu brouillon et trop long pour ce que c'est censé faire. Aussi, quand tu croules sous un nombre de paramètres trop importants, n'oublie pas qu'il existe la commande "shift", qui peut rendre de bon service.

Bonne continuation. Wink


Tu ne m'offense pas, au contraire.

Par "Ton script gagnerait à être simplifié" tu sous-entend qu'il y a des options inutiles ou que des partie de code peuvent être mieux optimisé?
Parce que je fais ce batch pour qu'il soit le plus complet possible tout en étant le plus réactif possible pendant la boucle de copie, donc pas question d'enlever des options, mais par contre si tu vois du code qu'il est possible d’alléger je t'écoute^^

Je ne sais pas comment tu organiserai un code pour que cela soit moins brouillon, mais je t’accorde que les étiquettes pour les call ne sont pas ordonnée.

Pour la commande shift, je ne la connaissait pas. Je vais regarder sa de plus près et je l'intégrerais dans la prochaine maj. Merci pour cette idée Okay




______________________________________________________
Mes principales réalisations: Cp (batch) et IPSvc (autoit)
Répondre en citant
Message [Final][EXE] Cp: utilitaire de traitement d'arborescence de dossiers - Cautex 
Ben les options sont ce qu'elles sont, mais un truc, genre reprise de la copie en cas d'échec sur certains fichiers, pourrait être plus appréciable. Quant au code, oui, il pourrait largement être plus compacte, en plus, y'a tellement de variables qu'il y a nécessairement moyen de grandement simplifier les choses. Enfin, brouillon parce qu'il n'est pas aisé à lire, c'est comme si t'avais expérimenté plusieurs parties et que tu les as collées et dispatchées dans un même fichier, tu coups on ne reconnait pas ta logique de cheminement ce qui rend l'aide moins spontanée, car elle nécessite un gros effort de déchiffrage.

Juste pour ne pas te laisser sur ta faim, toute ta gestion des paramètres avec shift se résumerait à 3 lignes, il en va de même avec la gestion des versions de systèmes d'exploitation pris en charge en utilisant findstr. La "configuration par défaut " devrait être mise dans un fichier externe, genre un fichier ini. Enfin, voilà, plein de petites choses qui rendraient ton code plus souple et attractif.

Enfin pour terminer, je mettais inscrit juste par curiosité donc je ne pense pas que je reposterais. Je te souhaite alors bon courage pour la suite. Wink



Répondre en citant
Message merci 
pour voir Very Happy



Répondre en citant
Message [Final][EXE] Cp: utilitaire de traitement d'arborescence de dossiers - Cautex 
temp a écrit:
Ben les options sont ce qu'elles sont, mais un truc, genre reprise de la copie en cas d'échec sur certains fichiers, pourrait être plus appréciable. Quant au code, oui, il pourrait largement être plus compacte, en plus, y'a tellement de variables qu'il y a nécessairement moyen de grandement simplifier les choses. Enfin, brouillon parce qu'il n'est pas aisé à lire, c'est comme si t'avais expérimenté plusieurs parties et que tu les as collées et dispatchées dans un même fichier, tu coups on ne reconnait pas ta logique de cheminement ce qui rend l'aide moins spontanée, car elle nécessite un gros effort de déchiffrage.

Juste pour ne pas te laisser sur ta faim, toute ta gestion des paramètres avec shift se résumerait à 3 lignes, il en va de même avec la gestion des versions de systèmes d'exploitation pris en charge en utilisant findstr. La "configuration par défaut " devrait être mise dans un fichier externe, genre un fichier ini. Enfin, voilà, plein de petites choses qui rendraient ton code plus souple et attractif.

Enfin pour terminer, je mettais inscrit juste par curiosité donc je ne pense pas que je reposterais. Je te souhaite alors bon courage pour la suite. Wink


Moi je pense que ce message n'est destiné qu'a critiquer ce batch. tu ne fait aucune remarque constructive, tu n’apporte que des critiques car ce batch ne correspond pas à ta "manière de faire" . En plus tu n'a pas compris mes intentions, le but de ce programme, ni même sa structure.
La seule chose que je retient est l'utilisation de shift.




______________________________________________________
Mes principales réalisations: Cp (batch) et IPSvc (autoit)
Répondre en citant
Message [Final][EXE] Cp: utilitaire de traitement d'arborescence de dossiers - Cautex 
Bravo pour ce poste qui peut etre fort utile, bon courage!!!



Visiter le site web du posteur
Message [Final][EXE] Cp: utilitaire de traitement d'arborescence de dossiers - Cautex 


Montrer les messages depuis:
Répondre au sujet Page 1 sur 4
Aller à la page: 1, 2, 3, 4  >
  



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