Я на лету создаю скрипт для ftp-файлов с удаленного компьютера. Я создаю файл, который затем вызывается из командной строки с
ftp -s:filename proxy
где filename - файл, который я только что создал. Файл имеет код, подобный следующему:
anonymous@ip address
username
prompt off
binary
cd c:\destination directory
mget c:\source directory\*.*
quit
Это не работает. Не делает следующее:
anonymous@ip address
username
prompt off
binary
cd c:\source directory
mput c:\destination directory
quit
Очевидно, я не очень хорош в ftp. Как, в каком порядке, где в моем файле я указываю место, куда я хочу поместить файлы (каталог назначения, а также откуда запускается процесс ftp), и откуда я хочу, чтобы файлы приходили (IP-адрес компьютер, на котором есть файлы, которые я хочу). Нужно ли устанавливать каталог перед запуском процесса ftp?
Я запускаю это в пакете служб SSIS и не использую задачу SSIS ftp, потому что не хочу сбоя, если файлы не найдены. Если там ничего нет, это круто. Если там что-то есть, я хочу копию.
(Это работало в моей области разработки, и теперь, когда я пытаюсь получить файлы с сервера, к которому у меня действительно нет доступа, кроме ftp, я ничего не получаю. См. Как избежать Не удалось выполнить задачу SSIS FTP при отсутствии файлов для загрузки? для более раннего связанного вопроса.)
Обновление:
Оба ответа ниже, перечисляющие lcd и cd, верны. Однако мой пример все еще не удался, пока я не заменил обратные косые черты на прямые. Другими словами, мой окончательный рабочий результат выглядит следующим образом:
anonymous@ip address
username
prompt off
binary
lcd /destination directory
cd /source directory
mget *.*
quit