天天看點

用指令行工具 Speedtest-CLI 來測試你的上下行網速

我們經常需要到檢查家裡與辦公室之間的網絡是否連通,那麼我們要怎麼做呢?打開網站speedtest.net然後開始測試。網站是通過加載浏覽器中的javascript腳本然後選擇最佳的伺服器測速然後用flash産生圖形化的結果。

那麼遠端伺服器呢?要知道大多數遠端伺服器是沒有浏覽器可以打開web頁面的。用浏覽器打開網頁測速的瓶頸就在此,你不能按計劃的對伺服器進行定期的正常測試。這時需要到一個名為speedtest-cli的軟體來打破這個瓶頸,它能讓你通過指令行來測試網際網路連接配接的速度。

此程式是基于python開發的腳本程式,利用了speedtest.net的服務來測量出上下行的寬帶。speedtest-cli能根據機房離測速伺服器的實體距離來列出測速伺服器,或者針對某一伺服器進行測速,同時還能為你生成一個url以便你分享你的測速結果。

要在linux上安裝最新版本的speedtest-cli,你必須安裝2.4-3.4或者更高版本的python。

<a target="_blank"></a>

有兩種方法可以安裝speedtest-cli。第一種方法需要用到<code>python-pip</code>包管理器,第二種方法需要安裝python腳本,生成安裝檔案然後運作,這裡我們分别介紹兩種方法:

首先你需要安裝<code>python-pip</code>包管理器,之後你就可以用pip指令來安裝speedtest-cli

<code>$ sudo apt-get install python-pip</code>

<code>$ sudo pip install speedtest-cli</code>

如果要把speedtest-cli更新至最新版本,你需要輸入以下指令

<code>$ sudo pip install speedtest-cli --upgrade</code>

首先要用wget指令從github上下來python腳本,然後解壓提取下載下傳的檔案(master.zip)

<code>$ wget https://github.com/sivel/speedtest-cli/archive/master.zip</code>

<code>$ unzip master.zip</code>

提取出檔案後,進入提取出的目錄<code>speedtest-cli-master</code>然後使腳本可以執行。

<code>$ cd speedtest-cli-master/</code>

<code>$ chmod 755 speedtest_cli.py</code>

下一步,把可執行的腳本移動到<code>/usr/bin</code>檔案夾,這樣你就不用每次都輸入完整的腳本路徑了。

<code>$ sudo mv speedtest_cli.py /usr/bin/</code>

1. 要測試你的下載下傳與上傳速度,隻需要運作<code>speedtest-cli</code>指令,不需要帶參數。

<code>$ speedtest_cli.py</code>

用指令行工具 Speedtest-CLI 來測試你的上下行網速

在linux下測試上傳下載下傳速度

2. 測試上傳下載下傳的速度(以位元組計算)

<code>$ speedtest_cli.py --bytes</code>

用指令行工具 Speedtest-CLI 來測試你的上下行網速

測試bytes的速度

3. 工具提供一個連結來下載下傳由你的寬帶測試結果生成的圖檔,你可以分享給你的家人朋友。

用指令行工具 Speedtest-CLI 來測試你的上下行網速

分享測速結果

下面的圖檔就是你通過以上的指令行測速而生成的圖檔

用指令行工具 Speedtest-CLI 來測試你的上下行網速

測速結果

4.如果你僅僅需要ping,上傳,下載下傳的結果,就運作以下指令:

<code>$ speedtest_cli.py --simple</code>

用指令行工具 Speedtest-CLI 來測試你的上下行網速

測試ping,上傳,下載下傳的速度

5. 列出<code>speedtest.net</code>所有的伺服器距離你的實體距離,機關是千米(km)

<code>$ speedtest_cli.py --list</code>

用指令行工具 Speedtest-CLI 來測試你的上下行網速

列出speedtest.net的伺服器

6. 當獲得一個非常長的伺服器清單之後,怎麼列出我想要的某個伺服器?如果我要在speedtest.net伺服器清單中找出位于mumbai(印度)的伺服器呢?

<code>$ speedtest_cli.py --list | grep -i mumbai</code>

用指令行工具 Speedtest-CLI 來測試你的上下行網速

列出最近的伺服器

7. 對指定的伺服器進行測速。我們使用上面例子5和例子6中擷取的伺服器id:

<code>$ speedtest_cli.py --server [server id]</code>

<code>$ speedtest_cli.py --server [5060] ## 這裡使用伺服器id為5060作為例子</code>

用指令行工具 Speedtest-CLI 來測試你的上下行網速

對指定的伺服器進行測速

8. 輸出<code>speedtest-cli</code>的版本資訊和幫助文檔

<code>$ speedtest_cli.py --version</code>

用指令行工具 Speedtest-CLI 來測試你的上下行網速

輸出版本号

<code>$ speedtest_cli.py --help</code>

用指令行工具 Speedtest-CLI 來測試你的上下行網速

輸出幫助文檔

提醒:報告中的延遲并不是确切的結果,不應該過于依賴它;這個數值可以當作相對延遲,這對你選擇某一測試伺服器來說是可靠的。同時,cpu和記憶體的容量會影響結果的準确度。

系統管理者和開發者應該必備這個簡單的腳本工具,這個輕量級的工具功能齊全,真是太贊了。我不喜歡speedtest.net的原因是它使用來flash,相反speedtest-cli剛好戳中了我的痛點。

上面就是所有内容,更多内容敬請關注我們。如果你有任何回報記得在文章下方評論,如果你喜歡别忘了給我們點個贊,分享我們的文章。

<b>原文釋出時間為:2015-06-14</b>

<b>本文來自雲栖社群合作夥伴“linux中國</b>”