Chilkat HOME .NET Core C# Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi ActiveX Delphi DLL Go Java Lianja Mono C# Node.js Objective-C PHP ActiveX PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift 2 Swift 3,4,5... Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(VBScript) SFTP SyncTreeDownload - Find out what files were downloadedSee more SFTP ExamplesDemonstrates how to find out which files were downloaded in a SyncTreeDownload method call.
Dim fso, outFile Set fso = CreateObject("Scripting.FileSystemObject") 'Create a Unicode (utf-16) output text file. Set outFile = fso.CreateTextFile("output.txt", True, True) ' This example requires the Chilkat API to have been previously unlocked. ' See Global Unlock Sample for sample code. ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.SFtp") set sftp = CreateObject("Chilkat.SFtp") success = sftp.Connect("my-ssh-server.com",22) If (success = 1) Then success = sftp.AuthenticatePw("mySshLogin","mySshPassword") End If If (success = 1) Then success = sftp.InitializeSftp() End If If (success <> 1) Then outFile.WriteLine(sftp.LastErrorText) WScript.Quit End If ' Synchronize the remote directory tree rooted at "syncDownloadTest/xml" ' with the local directory tree rooted at "qa_output" ' Both directories are relative paths. The remote directory ' is relative to the HOME directory of the SSH user account. ' The local directory is relative to the current working directory of the process. ' It is also possible to use absolute paths. remoteDir = "syncDownloadTest" localDir = "qa_output" ' Possible modes that can be passed to the SyncTreeDownload method are: ' mode=0: Download all files ' mode=1: Download all files that do not exist on the local filesystem. ' mode=2: Download newer or non-existant files. ' mode=3: Download only newer files. If a file does not already exist on the local filesystem, it is not downloaded from the server. ' mode=5: Download only missing files or files with size differences. ' mode=6: Same as mode 5, but also download newer files. ' mode=99: Do not download files, but instead delete remote files that do not exist locally. ' This example will use mode 6 to download missing, newer, or files with size differences. mode = 6 ' This example will turn on recursion to synchronize the entire tree. ' Recursion can be turned off to synchronize the files of a single directory. recursive = 1 success = sftp.SyncTreeDownload(remoteDir,localDir,mode,recursive) If (success <> 1) Then outFile.WriteLine(sftp.LastErrorText) WScript.Quit End If ' Examine the list of downloaded files. ' The downloaded files are listed one per line in the SyncedFiles property. ' Local directories that were created will be listed with a trailing "/" char. fileList = sftp.SyncedFiles outFile.WriteLine(fileList) outFile.WriteLine("") ' For example: ' data/ ' chiliPepper.gif ' helloWorld.pdf ' alice.key ' anter_cert.pem ' text/ ' accentedLatin1.txt ' accentedUtf8.txt ' abc/ ' abc/chiliPepper.gif ' abc/ghk/ ' text/something/ ' text/PolishEmailBody.txt ' text/frenchUtf8.txt ' text/helloWorld.txt ' data/chiliPepper.gif ' data/xyz/ ' data/xyz/dkimHtmlBody.txt ' data/xyz/emailForCreateDsn.eml ' data/xyz/dkimVerifyTest.eml ' You could load the strings into a Chilkat string table.. ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.StringBuilder") set sb = CreateObject("Chilkat.StringBuilder") success = sb.Append(fileList) ' For versions of Chilkat < 10.0.0, use CreateObject("Chilkat_9_5_0.StringTable") set st = CreateObject("Chilkat.StringTable") success = st.AppendFromSb(sb) ' Find out how many files + dirs outFile.WriteLine("Total count = " & st.Count) i = 0 Do While i < st.Count outFile.WriteLine(st.StringAt(i)) i = i + 1 Loop outFile.WriteLine("Success.") outFile.Close |
© 2000-2024 Chilkat Software, Inc. All Rights Reserved.