Automatisation avec les batch .bat

Fermé
aziz_alg80 Messages postés 378 Date d'inscription vendredi 12 février 2010 Statut Membre Dernière intervention 30 mars 2020 - Modifié par aziz_alg80 le 16/04/2012 à 16:49
aziz_alg80 Messages postés 378 Date d'inscription vendredi 12 février 2010 Statut Membre Dernière intervention 30 mars 2020 - 25 avril 2012 à 20:28
Bonjour,
Saut tout le monde ;

Je viens d'éditer un fichier .Bat qui me permet de déplacer un (ou plusieurs) fichier d'un répertoire Rép1 vers un autre répertoire Rép2. La commande utilisée pour cela est très simple (sinon je n'arriverais jamais à le faire tout seul) : move D:Rép1\*.* Rép2

Le rép1 : est utilisé par un logiciel de formulation de commandes d'achat (Ce dernier créé dedans un fichier pour chaque commande d'achat)

Le rép2 : dans lequel je transfère ces fichiers est utilisé par un autre logiciel de facturation (pour facturer les commandes d'achat)

Avec le Batch que je viens de créer tout va bien, le double clic suffit, mais ce que je veux bien c'est de transférer automatiquement les fichiers vers le rép2 une fois sont créés par le logiciel de formulation de commandes dans le rép1.

J'espère que c'est clair, sinon je reste à votre disposition pour des informations complémentaires.
Merci d'avance.



A voir également:

6 réponses

salut,

---------------------------------------------------------------------------------------

@echo off

rem Le script tournera en permanence

rem Saisir le répertoire source au niveau de la variable REP_SOURCE
rem Saisir le répertoire de destination au niveau de la variable REP_DEST

rem Au niveau de la commande ping, ici le nombre 20 correspond
rem à l'attente en seconde entre 2 tests de présence de fichier

set REP_SOURCE=D:\rep1
set REP_DEST=D:\rep2

:loop
for /f %%i in ('dir "%REP_SOURCE%" ^| find "fichier"') do (
if %%i GTR 0 move "%REP_SOURCE%\*.*" "%REP_DEST%\"
ping -n 20 127.0.0.1 >nul 2>&1
)
goto loop

----------------------------------------------------------------------------------------

voilou tiens moi au jus si ça te correspond
a+ bon courage
0
aziz_alg80 Messages postés 378 Date d'inscription vendredi 12 février 2010 Statut Membre Dernière intervention 30 mars 2020 22
20 avril 2012 à 22:47
Salut LUDO

Tout d'abord je te remercie pour l'intérêt que tu as accordé à mon problème et pour le petit programme que tu as édité.

Quant à son exécution, ça donne le résultat suivant:
Fichier introuvable
Fichier introuvable
Fichier introuvable
Fichier introuvable
Fichier introuvable ....

sans qu'aucun fichier ne soit transféré.

Encore une fois MERCI BEAUCOUP.
0
tu travailles avec quel windows ?
0
aziz_alg80 Messages postés 378 Date d'inscription vendredi 12 février 2010 Statut Membre Dernière intervention 30 mars 2020 22
22 avril 2012 à 23:02
Windows Xp SP3
0
aziz_alg80 Messages postés 378 Date d'inscription vendredi 12 février 2010 Statut Membre Dernière intervention 30 mars 2020 22
23 avril 2012 à 21:51
Salut,
Juste pour l'information, le même programme je l'ai essayé sous un Windows 7 mais ça a donné le même résultat.
0
heyquem Messages postés 759 Date d'inscription mercredi 17 juin 2009 Statut Membre Dernière intervention 29 décembre 2013 130
23 avril 2012 à 00:21
salut

Quel est le logiciel de formulation de commandes d'achat ?
Il est écrit en quoi ?

Plutôt que de faire tourner en permanence un fichier batch qui va détecter l'apparition d'un fichier dans rep1 pour le transférer dans rep2, si j'ai bien compris le principe du code de LUDO, il vaudrait mieux à mon avis chercher à inclure dans le logiciel de formulation de commandes d'achat un snippet qui réalise ce transfert à chaque fois qu'un nouveau fichier est créé dans rep1.
0
aziz_alg80 Messages postés 378 Date d'inscription vendredi 12 février 2010 Statut Membre Dernière intervention 30 mars 2020 22
23 avril 2012 à 21:49
Salut,

Il s'agit d'un logiciel de réception de commande, je ne sais pas en quel language est t-il écrit, ni avec quel outil est t-il développé, ce qui est sûr c'est qu' on peut rien toucher. ton idée est claire, pratique et logique mais malheureusement c'est pas possible dans ce cas.
Je te remercie pour ton intérêt ..... Merci beaucoup
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
24 avril 2012 à 08:59
hello
essayer en changeant 1 ligne dans le script de LUDO
changer
for /f %%i in ('dir "%REP_SOURCE%" ^| find "fichier"') do (
par
for /f %%i in (' dir /b "%REP_SOURCE%" ^| find /c /v "" ') do (
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
aziz_alg80 Messages postés 378 Date d'inscription vendredi 12 février 2010 Statut Membre Dernière intervention 30 mars 2020 22
25 avril 2012 à 13:57
Hello
J'ai essayé avec le changement indiqué, et après l'exécussion ça a donné le résultat suivant:

Fichier introuvable un expression qui se répète à chaque 20 seconde mais saus qu'aucun fichier ne soit transféré malgré que ça en existe dans le rep1.
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
Modifié par dubcek le 25/04/2012 à 14:15
j'ai testé celui là, modifier REP_SOURCE et REP_DEST
@echo off   
set REP_SOURCE=.   
set REP_DEST=..\zzz   
:loop   
for /f %%i in (' dir /b "%REP_SOURCE%" ^| find /c /v "" ') do (   
if %%i GTR 0  move "%REP_SOURCE%\*.*" "%REP_DEST%\"   
ping -n 20 127.0.0.1 >nul 2>&1   
)   
goto loop 
0
aziz_alg80 Messages postés 378 Date d'inscription vendredi 12 février 2010 Statut Membre Dernière intervention 30 mars 2020 22
25 avril 2012 à 16:37
Qu'est ce que vous voulez dire par "modifier REP_SOURCE et REP_DEST " ?
Pour un exemple de tste, j'ai mis pour le répertoire source: D:\Rep1 et pour le répertoire de destination : D:\Rep2.
0
dubcek Messages postés 18718 Date d'inscription lundi 15 janvier 2007 Statut Contributeur Dernière intervention 22 mars 2024 5 615
25 avril 2012 à 16:40
il faut mettre des répertoires qui existent
0
aziz_alg80 Messages postés 378 Date d'inscription vendredi 12 février 2010 Statut Membre Dernière intervention 30 mars 2020 22
25 avril 2012 à 20:28
Effectivement, j'ai créé ces deux répertoires pour qu'ils servent pour essai
0