如何在Linux中設定Wget連線超時?
摘要
在Linux環境中工作時,您可以自由決定如何從透明URL下載檔案。大多數使用者習慣於Linux互動式下載檔案的方法。這種互動式方法涉及使用Web瀏覽器,使用者點選可用的下載按鈕,然後等待檔案下載開始併成功完成。
透過非互動式或命令列環境獲取基於網路的檔案的另一種方法是免費的GNU軟體Wget。Wget實用程式的非互動式特性表明,即使系統使用者當前未登入Linux作業系統,您的檔案下載也可以在後臺進行或繼續。
Wget應用程式支援透過FTP、HTTP和HTTPS協議檢索檔案。此外,它還支援基於HTTP代理的檔案下載。本文將介紹在Linux作業系統環境中設定Wget超時的內容,以幫助下載檔案。
注意 - Linux命令區分大小寫。
在Linux中安裝Wget
在當今大多數Linux發行版中,wget包都是預安裝的。
開啟您的終端,輸入wget,然後按Enter鍵檢視您的機器上是否安裝了Wget包。如果安裝了wget,計算機將列印wget: missing URL。否則,將顯示wget command not found。
如果尚未設定wget,您的包管理工具可以輕鬆地完成此操作。
在Ubuntu和Debian上安裝Wget
$ sudo apt install wget
在CentOS和Fedora上安裝Wget
$ sudo yum install wget
在Linux中使用Wget
可以使用以下標準語法使用Wget GNU實用程式:
$ wget [option]… [URL]...
有多個超時選項,包括--dns-timeout、--connect-timeout、--read-timeout和--timeout,因此我們必須明確說明我們想要的選項。
Wget --dns-timeout選項
--dns-timeout選項指定DNS查詢的最大時間。
$ wget --dns-timeout=5 https://github.com/the-vishal/Tutorials-Downloader/blob/master/README.md
--dns-timeout=5選項表示DNS查詢時間超過5秒即為失敗。
Wget --connect-timeout選項
對於TCP連線,您可以使用wget --connect-timeout選項。
$ wget --connect-timeout=3 https://github.com/the-vishal/Tutorials-Downloader/blob/master/README.md
前面的wget命令選項(--connect-timeout=3)表示如果建立TCP連線的時間超過3秒,則將終止該連線。
Wget --read-timeout選項
當用戶恢復從伺服器讀取/下載資料/檔案,但存在傳輸間隙導致Wget等待伺服器時,wget --read-timeout選項很有用。
$ wget--read-timeout=3 https://github.com/the-vishal/Tutorials-Downloader/blob/master/README.md
您可以使用--read-timeout提供您自己的等待時間,而不是處理這個不可知的等待時間,如果超過此時間,檔案下載將停止並重新啟動。
Wget --timeout選項
wget --timeout選項的值(也稱為網路超時)會自動被所有其他Wget超時設定繼承。例如,如果其值為x,則--dns-timeout、--connect-timeout和--read-timeout的值也將假定為x。
$ wget --timeout=6 https://github.com/the-vishal/Tutorials-Downloader/blob/master/README.md
在連線不穩定或伺服器不穩定的網路設定中,Wget GNU工具的超時引數對於啟動和完成檔案下載非常有用。
結論
在連線不穩定或伺服器不穩定的網路設定中,Wget GNU工具的超時引數對於啟動和完成檔案下載非常有用。
在本教程中,我們討論了wget命令的超時設定。對於大多數下載,我們可以簡單地使用預設超時設定。
但是,瞭解這些超時設定可以幫助我們在特定網路環境(例如連線或伺服器不穩定的環境)中調整超時時間,以便正確完成下載。