Я использую WinSCP
для подключения к FTP и загрузки нескольких файлов, но у меня возникают проблемы, когда файл не загружается, когда это происходит, сценарий останавливается, и следующие файлы не загружаются. В основном я использую код из документации WinSCP
# Conectar
$session.Open($sessionOptions)
#Upload files
$transferResult = $session.PutFiles($origenSubida, $destinoSubida)
# Resultados de cada archivo
foreach ($transfer in $transferResult.Transfers)
{
#looks if upload is correct
if ($transfer.Error -eq $Null)
{
LogWrite ("$(Get-Date) upload complete {0} , changing folder" -f $transfer.FileName)
Move-Item $transfer.FileName $rutaArchivos
}
else
{
LogWrite ("$(Get-Date) Upload of {0} has failed: {1}" -f $transfer.Filename, $transfer.Error.Message)
}
}
Неожиданное поведение следующее:
У меня есть 4 файла в папке, которые загружаются, файл 1, 2, 3 и 4, если я удаляю все разрешения из файла 3 и запускаю скрипт, файлы 1 и 2 загружаются на FTP и перемещаются в другой каталог, затем скрипт завершается с ошибкой отсутствия разрешения для файла 3, файл 4 не загружается.
Я не уверен, что я что-то упускаю из виду, разве сценарий не должен продолжаться, даже если он ничего не может сделать с файлом3? Я не уверен, есть ли другой способ сделать загрузку одного файла неудачной.