Script pentru a extrage informații despre fișiere de pe serverul ftp

Problema

Mă întreb dacă ai putea să mă ajuți cu următoarele, vă rog.

Aș dori să construiesc un script (în orice limbă, indiferent de ce este mai ușor) care, atunci când se execută, se va conecta la un server ftp existent folosind un cont generic și o parolă, apoi lista fișierelor într-un anumit folder care începe cu șirul "abc “. Numele de fișiere împreună cu data creării lor vor fi apoi extrase pe un fișier csv (sau similar). Poate cineva să mă poată ajuta în acest sens, vă rog?

Soluţie

Iată scriptul:

ftp.Hostname = "ftp.test.com"

ftp.Username = "Utilizator"

ftp.Password = "Pass"

"Modul implicit de transfer de date este" activ ", spre deosebire de" pasiv ".

'Schimbați-l la pasiv prin setarea proprietății pasive:

ftp.Passive = 1

'Stabilirea unui canal securizat SSL AUTH după conectare

"pe portul standard FTP 21.

ftp.AuthTls = 1

"Proprietatea Ssl este pentru stabilirea unei conexiuni implicite SSL

"pe portul 990. Nu îl setați.

ftp.Ssl = 0

'Conectați-vă și conectați-vă la serverul FTP.

connectStatus = ftp.Connect ()

Dacă (connectStatus 1) Apoi

'MsgBox ftp.LastErrorText

„WScript.Quit

Main = DTSTaskExecResult_Failure

altfel

dirStatus = ftp.ChangeRemoteDir ("RMed")

Dacă (dirStatus 1) Apoi

'MsgBox ftp.LastErrorText

„WScript.Quit

Main = DTSTaskExecResult_Failure

Terminați Dacă

'MsgBox ftp.getCurrentRemoteDir ()

'specificați calea și numele fișierului pe mașina locală

localInvoiceFile = "C: Documente și setăriNathanMy Documents2dRMedInvoice_RMed.txt"

localPatientFile = "C: Documente și setăriNathanMy Documents2dRMedPatient_RMed.txt"

'specificați calea și numele fișierului de pe aparatul de la distanță

remoteInvoiceFile = "C: ClientsStratFile UploadsCustomer UploadsRMedInvoice_RMed.txt"

remotePatientFile = "C: ClientsStratFile UploadsCustomer UploadsRMedPatient_RMed.txt"

"MsgBox remoteInvoiceFile

"MsgBox remotePatientFile

'descărcați fișierele de pe serverul de la distanță

transferStatus = ftp.getFile (remoteInvoiceFile, localInvoiceFile)

dacă (transferStatus 1) atunci

'MsgBox ftp.LastErrorText

Main = DTSTaskExecResult_Failure

altfel

Principal = DTSTaskExecResult_Success

sfârșit dacă

transferStatus = ftp.GetFile (remotePatientFile, localPatientFile)

dacă (transferStatus 1) atunci

'MsgBox ftp.LastErrorText

Main = DTSTaskExecResult_Failure

altfel

Principal = DTSTaskExecResult_Success

sfârșit dacă

END IF

ftp.Disconnect

Terminați funcția

Notă

Vă mulțumim pentru cb4nd17 pentru acest sfat pe forum.

Articolul Precedent Articolul Următor

Cele Mai Importante Sfaturi