我正在使用Ararat Synapse for Delphi,所以如果有办法设置这样的模式(或者将ls结果发送到字符串列表),我可以使用代码来完成。我查看了单元代码和dokuwiki,但没有找到任何结论。
但如果有一个FTP命令或设置我可以用来防止覆盖(导致GET或PUT没有被执行),这将节省我很多时间。
我现在看到的使用普通FTP命令的唯一方法是将每个文件放在一个文件夹中。在创建文件夹之前,我尝试将CD刻录到它并将PWD保存到当前目录。
换句话说,是一种“同步文件夹”,但仅适用于特定的文件名列表。
答案 0 :(得分:3)
没有这样的FTP命令可以满足您的要求。您必须在自己的代码中实现此类逻辑。如果目标文件夹中已存在文件,则不要发出GET
或PUT
命令。使用Delphi的FileExists()函数检查本地文件是否存在。使用FTP LIST
,MLST
和/或SIZE
命令检查是否存在远程文件。