OVH Cloud OVH Cloud

controle d'un transfert ftp dans un batch ou vbs

1 réponse
Avatar
turtle
Bonjour à tous,

je vous expose mon probleme en essayant d'etre le plus clair possible.

je souhaite avoir une valeur de retour à un fichier .bat qui execute un
transfert ftp pour pouvoir agir en consequence. de facon plus generale je
voudrais faire un transfert ftp et pouvoir scripter l'envoie d'un mail si le
transfert à échoué.

merci d'avance pour votre aide

@+

1 réponse

Avatar
jbongran
turtle wrote:
Bonjour à tous,

je vous expose mon probleme en essayant d'etre le plus clair possible.

je souhaite avoir une valeur de retour à un fichier .bat qui execute
un transfert ftp pour pouvoir agir en consequence. de facon plus
generale je voudrais faire un transfert ftp et pouvoir scripter
l'envoie d'un mail si le transfert à échoué.

merci d'avance pour votre aide

@+


Une possiblité parmi tant d'autres:
ftp -s:monfichierdecommandftp.txt >> ftpLog.txt 2>&1
Puis parser le fichier ftpLog.txt
Exemple en VB Script:

Function ReadLineTextFile()
ReadLineTextFile = ""
Dim fso
Set fso = CreateObject("Scripting.FileSystemObject")
If Not fso.FileExists("c:ftpLog.txt") Then
WScript.Echo "Fichier de log introuvable"
Exit Function
End If
Dim MyFile, sep, i, retstring
Const ForReading = 1
sep = ""
i = 0
Set MyFile = fso.OpenTextFile("c:ftpLog.txt", ForReading, False)
Do While MyFile.AtEndOfStream <> True
i = i +1
retstring = Trim(MyFile.ReadLine)
If Len(retstring) >= 3 Then
'WScript.Echo "Ligne " & i & " =" & retstring
If IsNumeric(Left(retstring, 3)) Then
If CDbl(Left(retstring, 3)) >= 500 Then
ReadLineTextFile = ReadLineTextFile & sep & retstring
sep = vbCrLf
End If
End If
End If
Loop
MyFile.Close
Set MyFile = Nothing
Set fso = Nothing
WScript.Echo "Sortie de fonction: " & vbCrLf & String(19, "-") & vbCrLf &
ReadLineTextFile
End Function

Call ReadLineTextFile()