【问题标题】:wget returns with 500: Internal error, but browser workswget 返回 500:内部错误,但浏览器可以工作
【发布时间】:2015-01-29 18:10:19
【问题描述】:

我正在尝试下载此链接的内容 > http://goldsmr2.sci.gsfc.nasa.gov/daac-bin/OTF/HTTP_services.cgi?FILENAME=%2Fdata%2Fs4pa%2FMERRA%2FMAT1NXSLV.5.2.0%2F2014%2F01%2FMERRA300.prod.assim.tavg1_2d_slv_Nx.20140103.hdf&FORMAT=TmV0Q0RGLw&BBOX=-16%2C-44%2C-11%2C-40&LABEL=MERRA300.prod.assim.tavg1_2d_slv_Nx.20140103.SUB.nc&FLAGS=&SHORTNAME=MAT1NXSLV&SERVICE=SUBSET_LATS4D&LAYERS=&VERSION=1.02&VARIABLES=u10m%2Cu50m%2Cv10m%2Cv50m

通过 wget 但我得到一个内部错误 500。当我将 url 粘贴到 Firefox 中时,它可以工作。 我已经尝试了 wget 的一些选项,甚至使用了代理,但似乎没有任何效果。非常感谢您的帮助。

谢谢。

【问题讨论】:

  • 将 URL 放在单引号中。 wget 'YOUR_URL_HERE'
  • 不敢相信这么简单。它确实给出了“文件名太长”的错误,但最后的 -O 选项起到了作用。非常感谢你。你能解释一下发生了什么吗?
  • 当然,看我的回答。

标签: wget


【解决方案1】:

某些字符在命令行中使用时具有特殊含义。例如,如果你的 URL 有几个 & 字符,它告诉 shell 运行它之前的命令,并运行下一个命令而不等待第一个命令完成,基本上提前终止 URL,并运行其他几个命令来自 URL 的其余部分。

您可以通过像这样用单引号将 URL 括起来来避免这些问题,这样可以防止 shell 解析特殊字符或变量。

wget 'YOUR_URL_HERE'

【讨论】:

    猜你喜欢
    • 2018-10-13
    • 2017-03-17
    • 1970-01-01
    • 2015-10-08
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多