Por que o curl me da html ao invés do arquivo? [fechadas]

2

Estou tentando (aprender) usar curl para baixar o arquivo http://cscope.sourceforge.net/cscope_maps.vim . Os comandos que tentei são:

curl -o cscope_maps.vim cscope.sourceforce.net/cscope_maps.vim
curl -O cscope.sourceforce.net/cscope_maps.vim
curl -LO cscope.sourceforce.net/cscope_maps.vim
curl -L cscope.sourceforce.net/cscope_maps.vim > cscope_maps.vim

Todos os comandos acima resultam em um arquivo com o seguinte conteúdo:

<html><head><script type="text/javascript">location.replace("https://malware.opendns.com/?url=cscope.sourceforce.net%2Fcscope_maps.vim&server=lax20&prefs=&tagging=&nref");</script></head></html>

... em vez do arquivo real. O que estou fazendo errado e qual é a sintaxe correta para baixar um arquivo com curl ?

(Se eu inserir o URL observado em um navegador gráfico, vejo o conteúdo esperado do arquivo, por isso, estou certo de que o URL está correto)

PS: Gostaria de saber como resolver isso com curl e não wget .

O que mais eu tentei :

Eu li o link que me levou a experimentar o -L opções, mas como observado acima, isso não alterou o comportamento observado.

    
por StoneThrow 22.03.2017 / 01:51

1 resposta

4

Sua declaração de abertura indica que você está tentando fazer o download de sourceforge.net

" I'm trying (learning) to use curl to download the file http://cscope.sourceforge.net/cscope_maps.vim ..."

No entanto, suas tentativas estão usando a fonte para c e.net

Esta página de manual curl descreve o que você está tentando fazer:

curl [options] [URL...]

com a opção -o sendo o que você está procurando

-o/--output

Write output to instead of stdout. If you are using {} or [] to fetch multiple documents, you can use '#' followed by a number in the specifier. That variable will be replaced with the current string for the URL being fetched. Like in:

curl http://{one,two}.site.com -o "file_#1.txt"

or use several variables like:

curl http://{site,host}.host[1-5].com -o "#1_#2"

You may use this option as many times as you have number of URLs.

Sua primeira tentativa deve funcionar quando você digitar corretamente sourceforge

curl -o cscope_maps.vim cscope.sourceforge.net/cscope_maps.vim  

Isso funcionou para mim.

    
por 22.03.2017 / 02:49

Tags