Comando sftp para obter / baixar o arquivo .tar.gz

14

Eu pensei que estava familiarizado com os sftpcomandos no unix e, até onde sei, o comando usado para baixar um compressedarquivo do servidor é

sftp get filename.tar.gz

Mas quando tentei esse comando, o arquivo foi esvaziado, quero dizer que o tamanho do arquivo está indo para 0 e não sei por que isso acontece. Existe algum outro comando específico para o .tar.gztipo de arquivos. Qual é o procedimento para obter esses arquivos compactados. Estou usando o terminal mac.

GIRI
fonte
2
Você não precisa incluir o endereço do servidor? Qual é o comando exato que você digitou?
Faheem Mitha 11/11
@FaheemMitha Entrei no servidor usando o comando sftp. user sftp [at] servidor e no sftp Eu terminal utilizado> get filename.tar.gz
GIRI

Respostas:

21

get é um comando sftp legal, mas não pode ser usado dessa maneira.

A sintaxe correta para fazer o download filename.tar.gzno seu Mac é:

sftp user@host:/path/to/filename.tar.gz /some/local/folder

(Substitua userpelo usuário que você usa para se conectar ao servidor remoto, substitua hostpelo nome do servidor remoto.)

Não há nada de especial nos tar.gzarquivos no comando acima, ele é genérico para qualquer extensão.

Para usar, getvocê deve entrar no modo interativo primeiro:

  1. Faça uma conexão com o servidor remoto:

    sftp user@host
    

    Espere até que >o prompt do sftp apareça em uma nova linha - agora você pode digitar seus comandos.

  2. Mude o caminho remoto para /path/to:

    cd /path/to/
    
  3. Mude o caminho local para /some/local/folder:

    lcd /some/local/folder
    
  4. Use getpara baixar o arquivo:

    get filename.tar.gz
    
jaume
fonte
Não, não está funcionando. Tentei suas sugestões. tentou mudar os caminhos locais, mas sem efeito.
GIRI 11/11
Você poderia postar a saída do comando sftp?
jaume
Não existe esse tipo de saída, pois o tipo de sftp > get filename.tar.gzarquivo não é baixado e a memória passa a
zero
Nem sftp > get filename.tar.gz, como publicado na sua pergunta, sftp get filename.tar.gzfuncionará. A sintaxe correta é sftp user@host:/path/to/filename.tar.gz /some/local/folder, como explicado na minha resposta. O que acontece quando você digita o comando (substitua user, host, /path/toe /some/local/foldercom os valores que estão corretas em seu ambiente) no Terminal e, em seguida, pressione Enter? Existe alguma saída? Em caso afirmativo, adicione-o à nossa pergunta.
jaume
Não há saída. apenas vai para a próxima linha.
GIRI 14/11