我想知道为什么以下命令无法下载 pdf 文件,而将 URL 粘贴到浏览器地址栏中却可以? (我想从这个问题中了解一些关于HTTP、Web服务或Web应用程序的知识)
如何使用wget下载pdf文件?
谢谢。
$ wget https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.99.598&rep=rep1&type=pdf
[1] 5696
[2] 5697
Redirecting output to ‘wget-log.1’.
[2]+ Done rep=rep1
$ cat wget-log
--2019-11-25 13:30:42-- https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.99.598
Resolving citeseerx.ist.psu.edu (citeseerx.ist.psu.edu)... 130.203.136.95
Connecting to citeseerx.ist.psu.edu (citeseerx.ist.psu.edu)|130.203.136.95|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 5641 (5.5K) [text/html]
Saving to: ‘download?doi=10.1.1.99.598’
download?doi=10.1.1.99.598 100%[============================================================================================>] 5.51K --.-KB/s in 0s
2019-11-25 13:30:42 (453 MB/s) - ‘download?doi=10.1.1.99.598’ saved [5641/5641]
[1]+ Done wget https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.99.598
答案1
看起来您的 shell 正在解释&
URL 中的字符,但它们无法访问wget
.
您应该单引号该字符串,以便您的 shell 将整个字符串视为一个字符串,并且不会尝试解释特殊字符:
wget 'https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.99.598&rep=rep1&type=pdf'