Linux:如何在終端機中透過 URL 下載文件

要在 Linux 終端機中從 URL 下載文件,最常用的兩個工具是wget和curl。對於使用伺服器檔案名稱進行簡單下載,請使用wget "URL"wget。使用 curl 時,請使用`--redirect-host` 參數curl -L -O "URL",這樣 curl 會跟隨 HTTP 重定向並將遠端檔案名稱儲存到終端,而不是直接列印檔案名稱。

下載網址的快速指令

任務命令
使用 Wget 下載wget "https://example.com/archive.tar.gz"
使用 curl 下載curl -L -O "https://example.com/archive.tar.gz"
使用 Wget 選擇檔名wget -O archive.tar.gz "URL"
使用 curl 選擇檔名curl -L -o archive.tar.gz "URL"
使用 Wget 恢復wget -c "URL"
使用 curl 恢復curl -L -C - -o archive.tar.gz "URL"

檢查是否已安裝 Wget 或 curl。

許多 Linux 發行版已經包含了其中一種或兩種工具。安裝任何工具前請先檢查:

command -v wget
command -v curl

如果命令輸出類似 `/etc/` 這樣的路徑/usr/bin/wget,則表示該工具可用。否則,請使用發行版的軟體套件管理器安裝該工具:

# Ubuntu or Debian
sudo apt install wget curl

# Fedora
sudo dnf install wget curl

# Arch Linux
sudo pacman -S wget curl

# openSUSE
sudo zypper install wget curl

使用 Wget 下載文件

當目標只是取得檔案時,Wget 非常方便。它的基本語法是wget [options] URL,如官方 GNU Wget 手冊所述。

wget "https://example.com/archive.tar.gz"

預設情況下,Wget 會將下載的檔案儲存到執行命令的目錄中,檔案名稱由 URL 產生。

使用 wget 從 URL 下載 archive.tar.gz 的 Linux 終端
使用 Wget 下載檔案時,基本操作會將檔案儲存到目前終端目錄。

儲存到另一個目錄或檔案名

若要保留遠端檔案名稱但將檔案放在「下載」資料夾下,請使用 Wget 的 directory-prefix 選項:

wget -P "$HOME/Downloads" "https://example.com/archive.tar.gz"

若要明確指定輸出檔名,請使用大寫字母-O:

wget -O "$HOME/Downloads/archive.tar.gz" "https://example.com/archive.tar.gz"

提供多個 URL 時要格外小心-O:Wget 會將它們視為一個輸出流,因此多個下載結果可能會寫入同一個輸出檔。 GNU下載選項參考文件對此行為進行了解釋。

使用 Linux 終端機的 wget -O 指令將 URL 下載儲存到 Downloads 目錄下。
此-O選項可為下載的內容指定明確的本機路徑和檔案名稱。

恢復中斷的 Wget 下載

如果先前的下載過程中途停止,且伺服器支援恢復下載,請執行:

wget -c "https://example.com/large-file.iso"

Wget 的這個-c選項會在可能的情況下從現有的部分檔案繼續下載。它適用於先前 Wget 或其他程式啟動的下載,而不僅僅是用於重試當前運行期間失敗的連線。

從文字檔下載多個URL

建立一個純文字文件,每行包含一個 URL,例如urls.txt,然後使用:

wget -i urls.txt

Wget輸入文件文件證實,它可以-i從文件中讀取 URL。

使用 curl 下載文件

除非您指定儲存到文件,否則 curl 會將回應資料寫入標準輸出。實際的下載格式如下:

curl -L -O "https://example.com/archive.tar.gz"

-L`--uppercase` 參數會遵循 HTTP 重新導向,而 `--uppercase` 參數-O則會使用 URL 中的名稱儲存檔案。這些選項在curl 的官方手冊頁中有詳細說明。

Linux 終端機執行 curl -L -O 指令,從 URL 儲存 archive.tar.gz 檔案。
使用 curl,-L可以追蹤重定向並-O保存 URL 的檔案名稱。

選擇 curl 輸出路徑

-o如果您要自行選擇本機檔案名,請使用小寫字母:

curl -L -o "$HOME/Downloads/archive.tar.gz" "https://example.com/archive.tar.gz"

這通常比 shell 重定向更清晰,因為 curl 直接管理輸出檔。

恢復 curl 下載

對於中斷的下載,-C -告訴 curl 從本機檔案確定恢復下載的偏移量:

curl -L -C - -o archive.tar.gz "https://example.com/archive.tar.gz"

恢復模式的支援仍然取決於協定和伺服器。請勿將 curl 的 `--remove` 和 `--remove` 組合使用--remove-on-error;-C目前的 curl 文件已將這些選項標記為不相容。

Linux 終端機使用 curl -L -C - 和 -o 復原部分下載
此-C -選項要求 curl 從現有的部分檔案恢復執行。

一些終端下載安全提示

  • &當 URL 中包含逗號?、括號或花括號等字元時,請用引號將其括起來*,以免 shell 將其解釋。
  • 優先使用 HTTPS,不要經常使用 curl-k或 Wget繞過憑證檢查--no-check-certificate。
  • 當發布者為大型安裝程式、ISO 映像或歸檔檔案提供 SHA-256 或類似摘要時,請驗證校驗和。
  • 避免將密碼或長期有效的金鑰直接放在 URL 中;命令列會儲存在 shell 歷史記錄中,並可能對其他進程或使用者可見。

對於一次下載,Wget 通常是最簡潔的命令。如果您還需要處理重新導向、自訂標頭、驗證、API 或其他 HTTP 控制,curl 則特別有用。對於普通的 Linux 終端下載,只要使用正確的輸出和復原選項,這兩個工具都可靠。

留下評論

如何在Linux系統上使用Cameractrls更改網路攝影機設置

如何在Linux系統上使用Cameractrls更改網路攝影機設置

使用 Cameractrls 在 Linux 上變更網路攝影機設定:調整曝光、色彩、減少閃爍和其他支援的控件,然後檢查相容的視訊模式。

如何在 Linux 上安裝 PhpStorm:工具箱、Tar.gz、Snap 和 AUR

如何在 Linux 上安裝 PhpStorm:工具箱、Tar.gz、Snap 和 AUR

在 Linux 系統上,您可以使用 JetBrains Toolbox 或獨立的 tar.gz 壓縮套件安裝 PhpStorm,此外還有 Snap 和 Arch AUR 版本可供選擇。 Java 已預先安裝。

如何在 Linux 系統上將 CD-ROM 備份為 ISO 文件

如何在 Linux 系統上將 CD-ROM 備份為 ISO 文件

在 Linux 上使用 GNOME Disks 或 dd 建立 CD-ROM ISO。識別光碟機,監控複製過程,驗證鏡像,並了解何時損壞的光碟或音訊光碟需要其他工具。

如何在 XFCE 4 上設定雙面板

如何在 XFCE 4 上設定雙面板

為每個顯示器建立一個單獨的 XFCE 4 面板,將第二個面板指派給正確的輸出,調整其位置和大小,並新增所需的啟動器和狀態項目。

如何在Linux上安裝Cisco Packet Tracer

如何在Linux上安裝Cisco Packet Tracer

下載適用於 Ubuntu 64 位元系統的 Cisco Packet Tracer 9.0.1,使用 APT 安裝 DEB 軟體包,在終端機中接受許可協議,然後登入以啟動實驗環境。

如何在Linux系統下使用GIMP摳圖

如何在Linux系統下使用GIMP摳圖

在 Linux 系統上使用 GIMP 去除照片背景:描繪主體,刪除選定的背景,保持透明度,並匯出可重複使用的 PNG 檔案。

免費下載 FlightGear:官方安裝指南

免費下載 FlightGear:官方安裝指南

從官方網站免費下載 FlightGear。比較 Windows、macOS 和 Linux 版本的軟體包,安裝資料文件,即可開始您的首次飛行。

Google Tasks桌面應用程式:如何在電腦上使用

Google Tasks桌面應用程式:如何在電腦上使用

在瀏覽器中開啟 Google Tasks,新增 Chrome 捷徑或應用程式啟動,並透過行事曆和 Gmail 管理有日期的待辦事項。

OKSampler:一款免費、簡單的鍵盤節拍音樂採樣器

OKSampler:一款免費、簡單的鍵盤節拍音樂採樣器

OKSampler 可以將 MP3 片段對應到鍵盤按鍵,並支援音訊循環播放。了解這款經典免費軟體的功能、其舊功能的缺失以及下載前需要檢查的事項。

如何在 Linux 系統上安裝 Wireshark:Ubuntu、Fedora、Arch 等

如何在 Linux 系統上安裝 Wireshark:Ubuntu、Fedora、Arch 等

使用目前軟體包命令在 Ubuntu、Debian、Fedora、Arch 或 openSUSE 上安裝 Wireshark,然後安全地配置即時資料包擷取。