Quiero duplicar un directorio en un servidor FTP al que estoy conectado desde mi Mac a través de la línea de comandos
Digamos que tengo file
. Quiero tener files2
con todos los subdirectorios y archivos de file
, en el mismo directorio que el original. ¿Cuál sería la forma más sencilla de lograrlo?
EDITAR:
Con mget
y mput
puedes descargar todos los archivos y cargarlos nuevamente en una carpeta diferente, pero esto definitivamente NO es lo que quiero/necesito (comencé esta pregunta tratando de evitar la duplicación con esta carga de descarga método del cliente dektop)
Lo que tienes no es una línea de comandos de Unix, lo que tienes es una sesión FTP. FTP está diseñado principalmente para cargar y descargar archivos, no está diseñado para la administración general de archivos y no le permite ejecutar comandos arbitrarios en el servidor. En particular, hasta donde yo sé, no hay forma de activar una copia de archivo en el servidor: todo lo que puede hacer es descargar el archivo y luego cargarlo con un nombre diferente.
Algunos servidores admiten extensiones del protocolo FTP y es remotamente posible que una de estas extensiones le permita copiar archivos remotos. Tratar help site
o remotehelp
para ver qué extensiones admite el servidor.
Si desea una línea de comandos de Unix, necesita acceso remoto a Shell, a través de rsh (r emote sh ell) o más comúnmente en el siglo XXI ssh (s ecure sh ell). Si se trata de un servidor web, compruebe si proporciona acceso ssh. De lo contrario, comuníquese con el administrador del sistema. Pero no se sorprenda si la respuesta es no: el acceso a la línea de comandos sería una brecha de seguridad en algunas configuraciones de múltiples usuarios, por lo que puede haber una razón legítima por la que no se ofrece.
Aquí se explica cómo hacerlo con lFTP :
# lftp ftp_Host
user ftp_user ftp_pass
mirror source target (download entire directory tree)
mirror -R source target (reverse mirror; upload entire directory tree)
Esto está mal ahora, pero se mantiene sin eliminar para que el árbol de comentarios no se pierda
cp
copia archivos y directorios; puedes darle el -r
para hacer que copie todo de forma recursiva. Desde la carpeta que contiene file
:
$ cp -r file files2