Автоматический FTP для загрузки новых файлов на веб-сервер?

#eclipse #automation #synchronization #sftp

#файл #загрузка #ftp

Вопрос:

Я ищу FTP-клиент, который я могу использовать для загрузки новых файлов с локальной машины разработки на удаленный веб-сервер. Однако я хочу загрузить только недавно отредактированные файлы.

Есть ли утилита командной строки, которая может это сделать, которую я могу добавить в автоматизированный процесс? Доступен ли клиент с графическим интерфейсом, который может это сделать? Было бы неплохо, чтобы он тоже был кроссплатформенным. Есть идеи?

Ответ №1:

Расширение Mercurial FTP должно сделать это за вас, хотя я сам этого не пробовал.

Ответ №2:

Существует программа резервного копирования SyncBack, которая делает это.

Вы можете узнать больше об этом здесь: http://www.2brightsparks.com

Ответ №3:

У вас есть два варианта:

  • Запланируйте частую синхронизацию локальной папки с удаленной папкой (или перемещение всех файлов из локальной папки в удаленную папку, если это более уместно)
  • Используйте инструмент, который может отслеживать изменения в локальном каталоге и отражать их в удаленном каталоге

Вы можете реализовать обе эти опции с помощью FTP-клиента WinSCP.


Планирование

Чтобы синхронизировать изменения в локальном каталоге с удаленным каталогом, используйте synchronize команду WinSCP script из пакетного файла, например:

 winscp.com /ini=nul /log=c:writablepathtosynchronize.log /command ^
    "open ftp://username:password@ftp.example.com/" ^
    "synchronize remote C:localpath /remote/path" ^
    "exit"
 

И запланируйте частый запуск пакетного файла с помощью планировщика Windows.

Если вы не хотите сохранять локальную копию изображений, просто переместите их на FTP-сервер, вместо их синхронизации. Для этого замените

 "synchronize remote C:localpath /remote/path" ^
 

с помощью put -delete команды, подобной:

 "put -delete C:localpath* /remote/path/" ^
 

Подробнее см. Также Руководство по автоматизации передачи файлов (или синхронизации) на FTP-сервер.


Следите за изменениями

Используйте функцию WinSCP «Поддерживать удаленный каталог в актуальном состоянии».

Его можно использовать как в режиме командной строки, так и в консольном режиме, используя keepuptodate команду, например:

 winscp.com /ini=nul /log=c:writablepathtosynchronize.log /command ^
    "open ftp://username:password@ftp.example.com/" ^
    "keepuptodate C:localpath /remote/path" ^
    "exit"
 

Или в графическом / графическом режиме. Вы можете запустить графический режим в WinSCP GUI (после входа в систему) или из командной строки, используя /keepuptodate переключатель, например:

 winscp.exe ftp://username:password@ftp.example.com/ /keepuptodate C:localpath /remote/path
 

(Я автор WinSCP)