FILECOMPARETO Compare local file to remote file |
Top Previous Next |
This command compares the size and date/time stamp of a specified local file with a file of the same name in the current directory on a remote site.
The results of the comparison are saved in two internal script variables: size result is saved in %comparesize and date/time result is saved in %comparedate. These variables may then be tested using the IFSIZE and IFDATE commands respectively. (Do not use the IFERROR command.)
Consider the following example where a specified local file is compared to a correspondingly named file on the site and a conditional branch is taken if the file on the remote site is larger than the local file.
FILECOMPARETO "local_file" IFSIZE $ERROR_SRVR_FILE_LARGER GOTO save_this_file
If you are not using the TIMEZONE script command, you may specify the /tz option to account for differences in timezones between Robo-FTP and the remote site. This is important for accurate file date and time stamp comparisons. For example, if you are using Robo-FTP in the Central U.S. timezone and the site is located in the Eastern U.S. timezone there may be a one-hour difference between the file system times of Robo-FTP’s PC and the site. To allow for this in the FILECOMPARETO command, the command would look like the following which indicates that the site is one hour ahead:
FILECOMPARETO "localfile" /tz=+1 IFDATE $ERROR_SRVR_FILE_OLDER GOTO upload_file IFDATE $ERROR_NO_SRVR_FILE_EXISTS GOTO upload_file
Further, if the remote site is located in the Pacific U.S. timezone there may be a two-hour difference the other way between the file system times of Robo-FTP’s PC and the site. To allow for this, the command would look like the following which indicates that the remote site is two hours behind:
FILECOMPARETO "localfile" /tz=-2 IFDATE $ERROR_SRVR_FILE_NEWER GOTO do_download
FILECOMPARETO populates the value of %comparesize as follows:
FILECOMPARETO populates the value of %comparedate as follows:
Important The success of this command depends on Robo-FTP's ability to automatically read and understand the directory listings returned by the remote site. Most HTTP/HTTPS sites do not return listings in a supported format and many return no raw directory listings in response to HTTP GET requests based on slash-terminated URLs. Contact technical support if you have an urgent need related to a raw directory listing format that is currently unsupported.
Related command(s): IFSIZE, IFDATE, FILECOMPAREFROM, SYNC, FTPDIFF See also: Comparing Local and FTP Site Files, GETFILE, SENDFILE, RCVFILE |