FTPsendcmd $приемник , @код_команды
Отправка произвольной команды FTP стандарта серверу.Возвращает в приёмнике код ответа сервера в спецификации FTP, вот некоторые из них:
120 | Служба будет готова через n минут. |
150 | Файл доступен; открывается соединение данных. |
200 | Команда выполнена. |
202 | Команда не реализована. |
221 | Служба закрывает управляющее соединение. Если необходимо, производится выход из системы. |
250 | Требуемая операция с файлом закончена успешно. |
332 | Имя пользователя в порядке, требуется пароль. |
350 | Для операции с файлом необходима дополнительная информация. |
450 | Требуемая операция не принята. Файл недоступен. |
500, 501 | Синтаксическая ошибка; команда не принята. |
502 | Команда не реализована. |
503 | Неправильная последовательность команд. |
550 | Требуемая операция не принята. Файл недоступен. |
553 | Требуемая операция не принята. Имя файла не разрешено системе. |
Данная команда может использоваться для проверки соединения с сервером после получения ошибок не связаных с закрытием управляющего соединения, путём отправки команды FTP: "NOOP", например:
FTPsendcmd $i, "NOOP" Jmp!=N $i, 200, ERROR Jmp!=N $F, 0, ERRORМожно использовать команду FTPsendcmd и для отправки команд отсутствующих в стандарте FTP (RFC 959), являющихся расширенными, например, команды "SITE chmod 666 filename.ext", где 666 это атрибуты файла в OCT системе исчисления (*NIX стандарт).
Модифицирует регистр $F:
$F=0 Успешно
$F=1 Не соединено с сервером
$F=2 После выполнения команды управляющее соединение потеряно
Исключения при выполнении:
Примечание:
Потеря управляющего соединения равноценна выполненной команде FTPdisconnect выполнение FTP команд после этого невозможно и требуется соединиться вновь (FTPconnect).
Потеря управляющего соединения происходит в случае, если отправленная Вами команда выдала код возврата, который обязывает разорвать соединение или заново авторизоваться, то есть коды: 220, 221, 331, 421, 530.
Если в ходе выполнения команды сервер потребовал открыть соединение для передачи файла или приёма данных, то соединение не открывается, а вслед за Вашей командой отправляется команда отмены.
Источник информации: сайт разработчика языка HTP