Что ж, когда вы перемещаете файл (на том же диске), вы только сообщаете файловой системе, что файл может быть найден где-то еще, но на самом деле вы не перемещаете никакие данные.Поэтому я предполагаю, что движение идет вперед и сообщает файловой системе, где теперь можно найти файл, но операция FTP уже выделила место на жестком диске для фактических данных, и поэтому тот факт, что файл был перемещен, выиграл 'Это никак не влияет на то, где хранятся данные, и поэтому все это работает.
Если вы переместили файл на другой диск, я бы предположил, что что-то где-нибудь сломается.
Если вы 'у нас есть доступ к клиенту, вы могли бы после этого написать еще один крошечный файл с именем bigfile.zip.complete
или аналогичным, и ваше серверное приложение может дождаться этого перед началом обработки, так что вы будете уверены, что оно завершило копирование (это также будет работать в случае, если соединение обрывается на полпути, и клиент прекращает загрузку файла, даже если он еще не завершен).
Или, если у вас нет доступа к клиенту, возможно, вы могли бы попробовать посмотреть наразмер файла, если он не изменился в течение стольких секунд или минут, то мы надеемся, что он закончен.