2009-03-28 28 views
5

Tengo un sitio web con archivos PHP y otros. Me gustaría hacer una sincronización de un clic entre mi copia local de un sitio web y mi sitio web en el servidor. Sería bueno si hubiera una utilidad de línea de comandos o un complemento para Eclipse PDT para hacer esto.Cómo sincronizar el directorio FTP desde la línea de comando?

+0

Mi sistema operativo es Windows y el servidor tiene un sistema Linux. –

+0

Ok, necesitas una herramienta de sincronización con soporte de línea de comandos para Windows. si tiene instalado Python puede probar ftpsync2d ya que es gratis –

+0

http://code.google.com/p/ftpsync2d/ –

Respuesta

7

He encontrado WinSCP. Es FTP, gratuito y de código abierto: http://winscp.net/eng/docs/start

Y funciona desde la línea de comandos con comparación de archivos (para sincronizarlo)

+0

WinScp funcionó bien para descargar actualizaciones, pero ¿hay alguna manera de hacer que elimine archivos que ya no están en el servidor ftp? – Mike

+2

@Mike [synchronize -delete] (http://winscp.net/eng/docs/scriptcommand_synchronize) parece? –

5

Hay una herramienta llamada FTP Synchronizer (para Windows) que se puede ejecutar desde una línea de comandos. No puede sincronizar archivos por FTP sin usar cualquier biblioteca de FTP. Cuanto más madura es esta biblioteca, más rápido sincronizará los archivos (por ejemplo, puede almacenar en caché la información del archivo ya sincronizado en su base de datos interna).

¿No te gusta FTP Synchronizer? Google for alternative.

11

Recomendaría lftp. Es un cliente FTP de línea de comandos sofisticado y programable.

lftp has builtin mirror which can download or update a whole 
directory tree. There is also reverse mirror (mirror -R) 
which uploads or updates a directory tree on server. Mirror 
can also synchronize directories between two remote servers, 
using FXP if available. 

lftp -f mirror.sh

mirror.sh

open sftp://<username>:<password>@<ip address> 
mirror -c /<source> /<destination> 
exit 
+0

Ese enlace es para la versión de Linux. No sé si ya se mantiene la versión de Windows, pero hay una copia aquí: http://redpark.posterous.com/lftp-for-windows –

+0

Aún se mantiene --- 2013-03-14: lftp- 4.4.5 lanzado. Un error de rendimiento corregido. – schmunk

+2

lftp link se ha ido ahora que posterous se ha ido :( –

2

He estado usando scriptFTP en mis servidores Ventanas dedicadas para más de un año a sincronizar mis directorios de respaldo de la base de datos con mis servidores locales. Es un producto excelente que le permite realizar secuencias de comandos (a un nivel bastante sofisticado) y programar prácticamente cualquier tarea de FTP.

No tengo ninguna conexión con el producto, solo un usuario extremadamente impresionado. El producto resuelve con precisión el problema que está diseñado para resolver y ha demostrado ser totalmente sólido para mí. Es comercial, USD $ 35, pero uno de los mejores $ 35 que he gastado en software.

0

Usted podría intentar Aptana (http://www.aptana.org/studio/download) wich proporcionar una herramienta de archivo de transfert para sincronizar un proyecto con un servidor distante usando FTP. Puede usar la vista de secuencia de comandos para habilitar una característica agradable: cargue el archivo actual al guardarlo.

+0

Esto no es una respuesta. Pidieron –

0

PhpStorm just added two-way sync (over FTP and others) en su PHP IDE más excelente. Esta característica está en el current 3.0 EAP (beta), no en la versión 2.1.

+0

Esto no fue una respuesta. Pidieron una línea de comando –

+0

@MattFletcher Nice necro, ¡casi 6 años! De todos modos, la pregunta hace referencia a "un clic" y al uso de un complemento IDE también, así que es posible que desee lea la pregunta completa antes de perder el tiempo de todos con pedantería. – ColinM

+0

He leído la pregunta completa, pero la pregunta está mal escrita, ya que la solicitud de tal vez un complemento IDE i s solo se agrega al final como una nota al margen. El título solo menciona la línea de comando y es la respuesta que aparece en la parte superior de Google –

-1

Me parece una aplicación perfecta para el software de control de versiones.Elija mercurial o git y úselo para el control de versiones y la sincronización dentro de los directorios en las dos máquinas. Mercurial es más fácil de usar en general y tiene una instalación y una presencia más suaves en Windows, aunque configurar git en Windows ya no es una molestia.

+0

¡Esto no es una respuesta! Él no preguntó "hey, estoy tratando de sincronizar FTP, pero por favor dame una solución diferente". Esto me enoja mucho. ¿Qué pasa cuando las personas no tienen acceso al uso de git, por ejemplo, su terrible cliente tiene un cliente terrible que tiene una terrible empresa de TI directamente desde 1997 que solo permite el acceso de CPanel y MySQLAdmin? Si crees que las personas que leen esto nunca han oído hablar de Git, por favor, adelante y escribe un comentario sobre la pregunta. ¡Pero no es una solución a la pregunta! –

Cuestiones relacionadas