![]() |
Chilkat HOME Android™ AutoIt C C# C++ Chilkat2-Python CkPython Classic ASP DataFlex Delphi DLL Go Java Node.js Objective-C PHP Extension Perl PowerBuilder PowerShell PureBasic Ruby SQL Server Swift Tcl Unicode C Unicode C++ VB.NET VBScript Visual Basic 6.0 Visual FoxPro Xojo Plugin
(Tcl) SFTP Get File Date/Times in Different FormatsSee more SFTP ExamplesDemonstrates how to get remote file date/times in different formats.Note: This example requires Chilkat v11.0.0 or greater.
load ./chilkat.dll set success 0 # This requires the Chilkat API to have been previously unlocked. # See Global Unlock Sample for sample code. set sftp [new_CkSFtp] # Connect to the SSH server. set hostname "my-sftp-server.com" set port 22 set success [CkSFtp_Connect $sftp $hostname $port] if {$success == 0} then { puts [CkSFtp_lastErrorText $sftp] delete_CkSFtp $sftp exit } # Authenticate with the SSH server. set success [CkSFtp_AuthenticatePw $sftp "myLogin" "myPassword"] if {$success == 0} then { puts [CkSFtp_lastErrorText $sftp] delete_CkSFtp $sftp exit } # After authenticating, the SFTP subsystem must be initialized: set success [CkSFtp_InitializeSftp $sftp] if {$success == 0} then { puts [CkSFtp_lastErrorText $sftp] delete_CkSFtp $sftp exit } # Open a directory on the server... # This example opens the "junk" directory located under the HOME directory of the SSH user account. set handle [CkSFtp_openDir $sftp "junk"] if {[CkSFtp_get_LastMethodSuccess $sftp] == 0} then { puts [CkSFtp_lastErrorText $sftp] delete_CkSFtp $sftp exit } # Download the directory listing: set dirListing [new_CkSFtpDir] set success [CkSFtp_ReadDirListing $sftp $handle $dirListing] if {$success == 0} then { puts [CkSFtp_lastErrorText $sftp] delete_CkSFtp $sftp delete_CkSFtpDir $dirListing exit } # Close the directory handle set success [CkSFtp_CloseHandle $sftp $handle] if {$success == 0} then { puts [CkSFtp_lastErrorText $sftp] delete_CkSFtp $sftp delete_CkSFtpDir $dirListing exit } # Iterate over the files. # Examine each filename and indicate those that match *FICHERO*.pdf # (i.e. the filename contains the word "FICHERO" and ends in ".pdf") set fileObj [new_CkSFtpFile] set sbFilename [new_CkStringBuilder] set caseSensitive 0 set bLocalDateTime 0 set dt [new_CkDateTime] set i 0 set n [CkSFtpDir_get_NumFilesAndDirs $dirListing] while {$i < $n} { set success [CkSFtpDir_FileAt $dirListing $i $fileObj] if {$success == 0} then { puts [CkSFtpDir_lastErrorText $dirListing] delete_CkSFtp $sftp delete_CkSFtpDir $dirListing delete_CkSFtpFile $fileObj delete_CkStringBuilder $sbFilename delete_CkDateTime $dt exit } puts [CkSFtpFile_filename $fileObj] # Get the last-modified date/time CkDateTime_SetFromRfc822 $dt [CkSFtpFile_lastModifiedTimeStr $fileObj] # Get the date/time in other formats offered by the CkDateTime object. # such as Wed, 18 Oct 2017 09:08:21 GMT puts "RFC822 format: [CkDateTime_getAsRfc822 $dt $bLocalDateTime]" # such as 1990-12-31T23:59:60Z puts "Timestamp: [CkDateTime_getAsTimestamp $dt $bLocalDateTime]" # Such as: "02/16/2008 12:15:12" where hour is 0 to 23. puts "RFC822 format: [CkDateTime_getAsIso8601 $dt MM/DD/YYYY hh:mm:ss $bLocalDateTime]" set i [expr $i + 1] } puts "Success." delete_CkSFtp $sftp delete_CkSFtpDir $dirListing delete_CkSFtpFile $fileObj delete_CkStringBuilder $sbFilename delete_CkDateTime $dt |
© 2000-2025 Chilkat Software, Inc. All Rights Reserved.