我用於下載檔案的 3 個 Linux 命令以及它們的不同之處
需要協助在不使用網頁瀏覽器的情況下存取您的文件嗎? Linux 有一些可以直接從命令列存取的解決方案。
您是否曾經使用 Secure Shell 存取遠端計算機,卻發現自己需要從遠端位置下載檔案?你做什麼工作?由於您只能透過終端機視窗存取該遠端計算機,因此您無法像平常一樣開啟 Web 瀏覽器並下載檔案。
幸運的是,這些 Linux 命令使得從本地或遠端位置下載檔案變得相當容易。我將向您展示三個:wget、和 scp。
1. wget
wget 命令是我在 GUI 不可用時將遠端檔案下載到本機的首選命令。我傾向於預設使用 wget 有兩個原因:這是我學會用於此目的的第一個命令,而且非常簡單。
假設您需要下載檔案 http://www.example.com/file.zip。您可以使用以下命令來做到這一點:
wget http://www.example.com/file.zipwget 指令有幾個方便的選項。例如,如果下載中斷,您可以使用下列命令從中斷處繼續下載:
wget -c http://www.example.com/file.zip或者您可能想要下載具有不同名稱的檔案。為此,您只需使用 -O 選項(對於輸出檔案),如下所示:
wget -O newnamez.ip http://www.example.com/file.zip如果要將檔案下載到特定目錄,指令為:
wget -P /home/$USER/Downloads http://www.example.com/file.zip您也可以建立一個包含完整地址的文字檔案以存取多個下載。假設您建立檔案 downloads.txt。在該文件中,每行都會新增一個 URL。然後,您可以使用單一命令下載所有這些檔案:
wget -i downloads.txt2. curl
接下來,我們有curl,它是一個稍微不同的野獸。如果您使用curl 在沒有任何選項的情況下下載文件,curl 基本上會將文件的內容列印到終端機視窗。因此,您必須指示 curl 儲存文件,這是透過 -O 選項完成的,如下所示:
curl -O http://www.example.com/file.zip您也可以使用不同的名稱儲存遠端文件,如下所示:
curl -o newname.zip http://www.example.com/file.zip另一個方便的 curl 功能:您可以使用所謂的 globbing,它允許您一次指定多個 URL。
假設您需要下載 file1.zip、file2.zip、file3.zip、file4.zip 和 file5.zip,並且您希望使用單一命令來完成此操作。只需使用括號,如下所示:
curl http://www.example.com/file[1-5].zip所有五個檔案都將下載到目前工作目錄中。
3. scp
scp 指令是 Secure Shell 的一部分,可讓您以更高的安全性從遠端電腦複製檔案。由於 scp 與 Secure Shell 結合使用,因此您必須能夠使用有效使用者登入遠端電腦。
假設 file.zip 檔案位於網路上的遠端電腦上,並且您在託管電腦上擁有有效帳戶。例如,我們假設遠端電腦的 IP 位址是 192.168.1.11,而本地使用者名稱是 olivia。要從該機器下載文件,命令是:
scp olivia@192.168.1.11:/home/olivia/file.zip file.zip上面的命令將提示您輸入 olivia 的使用者密碼,並且在成功驗證後,file.zip 檔案將下載到本機上的目前工作目錄。
請記住,如果您在遠端電腦上沒有帳戶,則無法使用 scp 下載檔案。
雖然這三個 Linux 命令都可以用來下載文件,但如果你想知道我的偏好,那就是 wget 了(除非我需要添加一層安全性,此時我使用scp) 。
