Copie o arquivo no SFTP para outro diretório sem ida e volta

0

Eu tentei isso, mas é claro que não funciona:

sftp> cp baz.txt foo/bar/
Invalid command.

Existe uma maneira de fazer isso com uma conexão sftp ?

Claro, percebo que isso é trivial se eu me conectar com ssh . No entanto, eu tenho um servidor sftp onde eu não posso realmente fazer isso, pois ssh -ing me dá um diretório de inicialização diferente, e eu não tenho poder (ou mesmo conhecimento) dos caminhos absolutos no remoto; Eu preciso de tudo para trabalhar em relação ao diretório de inicialização quando eu me conecto com sftp .

    
por Tomas Aschan 12.01.2017 / 12:06

3 respostas

5

Um protocolo SFTP principal não suporta a duplicação de um arquivo remoto.

Existe um rascunho da extensão copy-file para o protocolo , mas isso é suportado apenas por alguns servidores SFTP ( ProFTPD / mod_sftp e pelo servidor Bitvise SFTP, por exemplo) e poucos clientes SFTP ( WinSCP por exemplo).

Definitivamente não é suportado pelo servidor OpenSSH SFTP mais difundido. Nem pelo cliente OpenSSH SFTP ( sftp ), ou seja, não há nenhum comando cp ou qualquer outro funcionalmente equivalente.

Alternativas (que você parece saber e não ajudarão):

  • Se você tiver acesso SSH / terminal ao servidor, use o comando shell cp .
  • Se o seu servidor SFTP suportar a extensão copy-file , use um cliente SFTP que também o suporte.
  • Caso contrário, sua única opção é fazer o download do arquivo para um local temporário local e carregar sua cópia novamente em um diretório remoto / destino diferente.
    Alguns clientes SFTP podem fazer isso para você de forma transparente de uma só vez (por exemplo, no WinSCP, consulte a opção Duplicar via cópia temporária local em Duplicar diálogo ).

(eu sou o autor do WinSCP)

    
por 12.01.2017 / 13:24
0
O protocolo

sftp não possui comandos para copiar arquivos no servidor remoto. Veja a página de manual para sftp para listar os comandos disponíveis.

    
por 12.01.2017 / 12:47
-1

Você pode usar os comandos de FTP como

sftp> put baz.txt /foo/bar/baz.txt
    
por 12.01.2017 / 12:30

Tags