cURL com SFTP via linha de comando da porta 22 não suportada / habilitada

1

Estou com dificuldades para criar o comando certo para se conectar a um servidor FTP seguro através da porta 22. Quando estou conectando via Filezilla, ele funciona com username / pwd e port. Depois de várias tentativas, acabei com esse comando que não envia um erro de formato de porta ou comando:

Se eu curl -u <myuername>:<pwd> "sftp://datafeeds.shareasale.com:22/54291/54291.txt" -o "c:/temp/54291.csv" , recebo o erro curl: (1) Protocol "sftp" not supported or disabled in libcurl . Eu instalei o último binário a partir daqui: link
Mas ainda dá o mesmo erro, como posso adicionar suporte / ativar o protocolo SFTP?

Eu já verifiquei aqui: link , link

    
por Flo 24.05.2018 / 14:49

1 resposta

1

How can I add support for/enable the SFTP protocol?

Já está ativado (pelo menos com o binário curl.exe ao qual você está vinculado). Se você executar curl -V no diretório bin do seu arquivo zip extraído, verá que sftp support é uma das opções de construção incluídas no banner de versão.

Igetanerror-curl:(1)Protocol"sftp" not supported or disabled in libcurl.

Como é, é difícil dizer exatamente qual é o problema real, mas uma das três possibilidades parece provável:

  • Você não está realmente usando a versão de curl que acha que é. Eu faria curl -V de, e. sua área de trabalho e ver se sftp support ainda estava listado no banner. Eu também faria where curl para ter uma idéia melhor de quais curl.exe arquivos estão registrados em seus caminhos de ambiente.

  • Você pode ter um erro de ortografia (por exemplo, "sftp", onde há um espaço não intencional antes de "sftp") ou outro problema com a URL que você está acessando.

  • Há um problema com o servidor ou sua configuração.

Com relação à solução de problemas gerais, eu executaria o comando curl da pasta bin do arquivo descompactado. Desta forma, não deve haver problemas com caminhos.

Finalmente, como uma pequena nota, o :22 é provavelmente desnecessário - sftp é executado na porta 22 por padrão. A única razão para especificar uma porta nesse caso é se a conexão não estiver na porta 22. Dito isso, eu verificaria a porta do servidor independentemente (ou seja, certifique-se de que é isn ') t usando a porta 23 ou 24, por exemplo).

    
por 24.05.2018 / 17:41