Wget

為什麼這個 wget 命令無法下載這個文件?

  • November 25, 2019

我想知道為什麼下面的命令無法下載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

看起來您的 shell 正在解釋&URL 中的字元,但它們沒有到達wget.

您應該對字元串進行單引號,因此您的 shell 將整個內容視為一個字元串,並且不會嘗試解釋特殊字元:

wget 'https://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.99.598&rep=rep1&type=pdf'

引用自:https://unix.stackexchange.com/questions/554109