Нужна простая библиотека API для работы с ftp в unix С++

vertyal17

привет!
Для автоматизированного забрасывания файлов с сервера/на сервер, нужно решение требующие минимум усилий для взбатывания и реализации/ Чтото попроще, чтоб могла копировать туда сюда файлы и поддерживала аутентификацию, вобщем чтото вроде виндового wininet.lib с его ftpGetFile/ftpPutFile. Или возможно какаято стандартная программа для запуска через popen.
Какой простейший путь существует?
Полчаса уж гуглю, но нахожу только или этотже wininet или чтото там для VB :(
Пробежал поиском по *ftp*.h и тоже без особого результата
зы/ да, желательно чтобы без какихлибо лицензионных заморочек

evgen5555

man curl

slonishka

первая ссылка в гугле по "unix ftp api": http://www.developerweb.net/forum/showthread.php?t=3362
libcurl в целом удобный, но тебе наверное и что-то попроще подойдет.

evgen5555

Да не пофигу ли, чем через попен-жопен заливать :D

slonishka

хз, мне в данном случае пофигу, но аффтару хочется помочь. =)

skyformstd

ваще если не касатся С++ то проще всего на баше сделать юзая стандартный фтп клиент

Olenenok

ваще если не касатся С++ то проще всего на баше сделать юзая стандартный фтп клиент
неа, на питоне всё-таки попроще

skyformstd

echo "user $ftp_Username $ftp_Password
cd $ftp_RemoteDir
put $FILE
bye" | ftp -n -v $ftp_Server 2>/dev/null 1>/dev/null &
и вся отправка

ppplva

При этом пароль будет виден в списке процессов, пусть и очень недолго. А если имя файла длинное или их много, можно переполнить буфер пайпа, и echo будет висеть достаточно долго.
В именах файлов бывают пробелы. Также там бывают " и '.
Ну и никакой проверки ошибок в твоем варианте нет, и при таком подходе она может быть только очень ограниченная.

vertyal17

Ок спасибо всем большое разберусь дальше :)

skyformstd

ну насчет ' и " в имени файлов ниче сказать не могу, а по поводу того, что буфер пайпа переполнится - не правда. У меня файлы с длиной симолов 20 подряд так закачивались несколько суток. и все было ок :) Этот кусок не претендует на обработку ошибок и т.п. Просто показать что все просто. Хочешь обработку ошибок, стремные символы в именах - юзай expect!
С паролем канеш палево - но это вопрос индивидуального случая
Оставить комментарий
Имя или ник:
Комментарий: