如何在 Linux 中僅顯示 wget 進度條?


摘要

透過 ssh 會話遠端管理 UNIX/Linux/BSD 伺服器是一種常見做法。對於安裝,您可能需要下載軟體或其他檔案。對於 Linux 作業系統,有一些強大的圖形下載管理器可用。但是,在命令列或 shell 提示符下使用 wget 命令時,首選非互動式下載器。wget 命令支援各種設定和 Internet 協議,包括 HTTP、FTP、HTTPS 等。

wget 命令最簡單的用途之一是下載單個檔案並將其放置在您當前工作目錄中。

Linux Wget 命令

為了使用 wget 下載檔案,鍵入 wget 後跟要下載檔案的 URL。wget 將下載指定 URL 處的檔案並將其儲存到當前目錄中。在下面的示例中,我們將瞭解如何在 Linux 中使用 wget 命令。

$ wget https://tutorialspoint.tw/index.htm

輸出

--2022-12-26 10:18:13--  https://tutorialspoint.tw/index.htm

Resolving www.tutorialspoint.com (www.tutorialspoint.com)... 192.229.221.69
Connecting to www.tutorialspoint.com (www.tutorialspoint.com)|192.229.221.69|:443... connected.
HTTP request sent, awaiting response... 200 OKLength: 127735(125K)[text/html]

Saving to: index.htm'index.htm     

        
0%[                    ]       0  --.-KB/s               index.htm           100%[===================>] 124.74K  --.-KB/s    in 0.009s  2022-12-26 10:18:14 (12.9 MB/s) - 'index.htm' saved [127735/127735]$ 

顯示進度條

當與 —show-progress 選項結合使用時,Wget 中的 -q 選項使您能夠顯示下載進度指示器,同時隱藏所有其他輸出。

在下面的示例中,我們將瞭解如何顯示進度條,

$ wget https://tutorialspoint.tw/index.htm   -q --show-progressindex.htm

輸出

0%[                    ]       0  --.-KB/s               index.htm           100%[===================>] 124.74K  --.-KB/s    in 0.03s   

使用 grep 顯示進度條

為了過濾我們希望獲得更清晰顯示的行,針對較舊的 wget 版本(1.16),其中 -show-progress 選項不可用。例如,wget 輸出中帶有百分號 (%) 的行表示下載正在進行。

在下面的示例中,我們將瞭解如何使用 grep 獲取進度條,

$ wget https://tutorialspoint.tw/index.htm   2>&1   |   grep '%'   

輸出

0K .......... .......... .......... .......... .......... 40%  125M 0s
50K .......... .......... .......... .......... .......... 80% 6.45M 0s
100K .......... .......... ....                            100%  206M=0.008s

結論

GNU wget 命令是一個有效的命令列工具,用於下載檔案、恢復中斷的部分下載、映象 HTTP/FTP 站點、提供使用者身份驗證、限制下載速度以及許多其他任務。

在本文中,我們學習瞭如何停用 wget 輸出的其他行並僅設定進度條。在更新版本的 wget 中,我們有 -show-progress 選項來限制輸出行。為了在舊版本中獲得更好的結果,我們可能需要使用 grep 等工具過濾輸出行。

我希望這些命令以及支援示例將有助於學習和探索 Linux。

更新於: 2023-03-23

2K+ 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始
廣告