it-swarm-pt.tech

Maneira mais fácil de duplicar diretório por FTP

Quero duplicar um diretório em um servidor FTP ao qual estou conectado a partir do meu Mac através da linha de comando

Digamos que tenho file. Eu quero ter files2 com todos os subdiretórios e arquivos de file, no mesmo diretório do original. Qual seria a maneira mais simples de conseguir isso?

EDITAR:

Com mget e mput você pode baixar todos os arquivos e enviá-los novamente para uma pasta diferente, mas isso definitivamente NÃO é o que eu quero/preciso (comecei esta pergunta tentando evitar a duplicação com este upload de download método do cliente dektop)

8
Trufa

O que você tem não é uma linha de comando unix, o que você tem é uma sessão de FTP. O FTP foi projetado principalmente para fazer upload e download de arquivos, não para gerenciamento geral de arquivos e não permite que você execute comandos arbitrários no servidor. Em particular, até onde eu sei, não há como acionar uma cópia do arquivo no servidor: tudo que você pode fazer é baixar o arquivo e depois carregá-lo com um nome diferente.

Alguns servidores oferecem suporte a extensões para o protocolo FTP, e é remotamente possível que uma dessas extensões permita copiar arquivos remotos. Experimentar help site ou remotehelp para ver quais extensões o servidor suporta.

Se você quiser uma linha de comando unix, você precisa de acesso remoto Shell, via rsh (r emote sh ell) ou mais comumente no ssh do século 21 (s ecure sh ell). Se este for um host da web, verifique se ele fornece acesso ssh. Caso contrário, entre em contato com o administrador do sistema. Mas não se surpreenda se a resposta for não: o acesso à linha de comando seria uma violação de segurança em algumas configurações de vários usuários, então pode haver um motivo legítimo para ele não ser oferecido.

7

Veja como fazer isso com 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)
4
mbrixner

Isso está errado agora, mas manter a exclusão para que a árvore de comentários não seja perdida

cp copia arquivos e diretórios; você pode dar a ele o -r sinalizador para fazer com que ele copie tudo recursivamente. Da pasta que contém file:

$ cp -r file files2
1
Michael Mrozek

LFTP suporta comandos de alto nível acima do que o protocolo FTP fornece, por exemplo, seu comando mirror fornece o que você deseja.

Existem outros programas com recursos semelhantes; sitecopy é outro exemplo.

1
ephemient