Page 1 sur 1
transfert FTP multi serveurs
Posté : mar. 20 févr. 2018 19:20
par yblis
Bonjour à tous!
je viens solliciter la communauté autoit,
étant un gros newbie en la matière je souhaiterai créer un script qui dira:
J'ai un dossier avec des données
transfert ces fichiers du dossier sur une plage d'adresse IP
Ex: de 192.168.1.1 à 192.168.1.100
si quelqu'un pourrait m'aider ça serait super cool
Merci par avance!
Re: transfert FTP multi serveurs
Posté : mar. 20 févr. 2018 21:34
par Tlem
Il serait très certainement plus simple d'avoir un script résident sur chaque serveur qui surveille un dossier partagé et des que des données y sont placées alors chacun des serveurs récupére ce qu'il peut/doit récupérer.
Sinon pour le cas présenté, il faudra une liste des serveur et de leur partage, puis faire une boucle de transfert pour chacun des serveurs. ^^
Envoyé de mon appareil mobile en utilisant Tapatalk
Re: transfert FTP multi serveurs
Posté : mer. 21 févr. 2018 07:17
par yblis
merci pour ta réponse,
le problème de fond est là, c'est que je ne peux mettre un script sur chaque serveur, car c'est du windows CE...
je vais essayé d'en faire un avec une liste d'adresse ip sur un fichier csv...
Re: transfert FTP multi serveurs
Posté : lun. 26 févr. 2018 07:15
par yblis
Bon j'ai fais un petit truc qui donne ça:
#include <FTPEx.au3>$ini = @ScriptDir
&"\fichier.ini" ; on place le fichier ini dans une variable pour éviter de le ré-écrire.$lop = IniReadSection($ini,"section") ; on appelle la commande placée dans une variable$SRCEcab = @ScriptDir & "\transfert\MC2180INV.CAB"$DESTcab = "/Application/startup/MC2180.CAB"$log =@scriptdir
&"\log.txt"For $i = 1 To $lop[0][0] ; lecture du fichier ini$IP = $lop[$i][1];~ MsgBox(0,"var",$IP) ; lecture de l'adresse IP Local $sServer = $IP Local $sUser = "" Local $sPass = "" Local $hOpen = _FTP_Open("connexion à" & $sServer) Local $hConn = _FTP_Connect($hOpen, $sServer, $sUser, $sPass) IF @error then Local $hFileOpen = FileOpen($log,1) FileWrite($hFileOpen, "echec de connexion à " & $IP & @CRLF) FileClose($hFileOpen) EndIf;~ --------------------------------------------------------------------------------------------------_FTP_FileDelete ($hConn, "/Application/Startup/Appcenter.exe" ) IF @error then Local $hFileOpen = FileOpen($log,1) FileWrite($hFileOpen, "Echec suppression Appcenter sur l'hôte : " & $IP & @CRLF) FileClose($hFileOpen) EndIf;~ --------------------------------------------------------------------------------------------------_FTP_ProgressUpload($hConn, $SRCEcab, $DESTcab) ;transfert fichier IF @error Then Local $hFileOpen = FileOpen($log,1) FileWrite($hFileOpen, "Echec du transfert de " & $SRCEcab & " vers : " & $IP & @CRLF) FileClose($hFileOpen) EndIf;~ --------------------------------------------------------------------------------------------------Local $hFileOpen = FileOpen($log,1)FileWrite($hFileOpen, "Réussi vers l'IP " & $IP & @CRLF)FileClose($hFileOpen)Next ; fin de la boucle, il n'y a plus rien dans la sectionMsgBox(0,"Terminé", "Traitement terminé")