下面是Kristóf Kovács收集的28個Unix/Linux下的28個命令行下的工具(原文連接),有一些是你們熟悉的,有一些是很是有用的,有一些是鮮爲人知的。這些工具都很是不錯,但願每一個人都知道。本篇文章還在Hacker News上被討論,你能夠過去看看。我以做者的原文中加入了官網連接和一些說明。php
iostat, vmstat, ifstat 三合一的工具,用來查看系統性能(我在《性能調優攻略》中提到過那三個xxstat工具)。html
官方網站:http://dag.wieers.com/rpm/packages/dstat/前端
你能夠這樣使用:linux
alias dstat='dstat -cdlmnpsy'
查看網絡流量的一個工具ios
官方網站: Simple Linux Utility for Resource Managementgit
真正程序員的代碼編輯器。程序員
你是否是常常須要 SSH 或者 telent 遠程登陸到 Linux 服務器?你是否是常常爲一些長時間運行的任務而頭疼,好比系統備份、ftp 傳輸等等。一般狀況下咱們都是爲每個這樣的任務開一個遠程終端窗口,由於他們執行的時間太長了。必須等待它執行完畢,在此期間可不能關掉窗口或者斷開連 接,不然這個任務就會被殺掉,一切半途而廢了。github
Screen是 一個能夠在多個進程之間多路複用一個物理終端的窗口管理器。Screen中有會話的概念,用戶能夠在一個screen會話中建立多個screen窗口,在 每個screen窗口中就像操做一個真實的telnet/SSH鏈接窗口那樣。請參看IBM DeveloperWorks的這篇文章《使用 screen 管理你的遠程會話》web
dtach 是用來模擬screen的detach的功能的小工具,其可讓你隨意地attach到各類會話上 。下圖爲dtach+dvtm的樣子。算法
tmux是一個優秀的終端複用軟件,相似GNU Screen, 但來自於OpenBSD,採用BSD受權。使用它最直觀的好處就是,經過一個終端登陸遠程主機並運行tmux後,在其中能夠開啓多個控制檯而無需再「浪 費」多餘的終端來鏈接這臺遠程主機;固然其功能遠不止於此。與screen相比的優勢:能夠橫向和縱向分割窗口,且窗格能夠自由移動和調整大小。可在多個 緩衝區進行復制和粘貼,支持跨窗口搜索;非正常斷線後不需從新detach;…… 有人說——與tmux相比,screen簡直弱爆了。
byobu是Ubuntu開發的,在Screen的基礎上進行包裝,使其更加易用的一個工具。最新的Byobu,已是基於Tmux做爲後端了。可經過「byobu-tmux」這個命令行前端來接受各類與tmux如出一轍的參數來控制它。Byobu的細節作的很是好,效果圖以下:
MultiTail是個用來實現同時監控多個文檔、相似tail命令的功能的軟件。他和tail的區別就是他會在控制檯中打開多個窗口,這樣使同時監控多個日誌文檔成爲可能。他還能夠看log文件的統計,合併log文件,過濾log文件,分屏,……。
官網:http://www.vanheusden.com/multitail/
終端下的PPT,要是在某某大會上用這個演示PPT,就太TMD的Geek了。
官網:http://www.ngolde.de/tpp.html
Executes tasks from input (even multithread).
xargs 是一個比較古老的命令,有簡單的並行功能,這個不說了。對於GNU parallel ( online manpage )來講,它不只可以處理本機上多執行緒,還能分散至遠端電腦協助處理。而使用GNU parallel前,要先肯定本機有安裝GNU parallel / ssh / rsync,遠端電腦也要安裝ssh。
Duplicity是使用rsync算法加密的高效率備份軟件,Duplicity支持目錄加密生產和格式上傳到遠程或本地文件服務器。
rsyncrypto 就是 rsync + encryption。對於rsync的算法可參看酷殼的rsync核心算法。
Encrypting backup tools.
NetHack(Wiki),20年曆史的古老電腦遊戲。沒有聲音,沒有漂亮的界面,不過這個遊戲真的頗有意思。網上有個傢伙說:若是你一輩子只作一件事情,那麼玩NetHack。 這句話很惹眼,但也讓人以爲這個遊戲很複雜不容易上手。其實,這個遊戲很雖然很複雜,卻容易上手。雖然玩通關很難,但上手很容易。NetHack上有許多 複雜的規則,」the DevTeam thinks of everything」(開發團隊想到了全部的事情)。各類各樣的怪物,各類各樣的武器….,有許多spoilers文件來講明其規則。除了每次開始隨機 生成的地圖,每次玩遊戲,你也都會碰到奇怪的事情: 由於喝了一種藥水,變成了機器人;由於踢壞了商店的門被要求高價賠償;你的狗爲你偷來了商店的東西….. 這有點象人生,你不能徹底瞭解這個世界,但你仍然能夠選擇本身的面對方式。
網上有許多文章所這是最好的電腦遊戲或最好的電腦遊戲之一。也許是由於它開放的源代碼讓人讚揚,古老的歷史讓人寬容,複雜的規則讓人敬畏。雖然它不是當前流行的遊戲,但它比任何一個當前流行的遊戲都更有可能再經受20年的考驗。
Slash’EM 也是一個基於NetHack的經典遊戲。
利用lftp命令行ftp工具進行網站數據的增量備份,鏡像,就像使用rsync同樣。
ack是一個perl腳本,是grep的一個可選替換品。其能夠對匹配字符有高亮顯示。是爲程序員專門設計的,默認遞歸搜索,省提供多種文件類型供選。
calcurse是一個命令行下的日曆和日程軟件。remind + wyrd也很相似。關於日曆,我不得不提一個Linux的Cycle日曆,也是一個神器,呵呵。
newsbeuter 和 rsstail 是命令行下RSS的閱讀工具。
作個環保的程序員,看看本身的電腦裏哪些程序費電。PowerTOP 是一個讓 Intel 平臺的筆記本電腦節省電源的 Linux 工具。此工具由 Intel 公司發佈。它能夠幫助用戶找出那些耗電量大的程序,經過修復或者關閉那些應用程序或進程,從而爲用戶節省電源。
ttyrec 是一個 tty 控制檯錄製程序,其所錄製的數據文件可使用與之配套的 ttyplay 播放。不論是你在 tty 中的各類操做,仍是在 tty 中耳熟能詳的軟件,均可進行錄製。
ipbt 是一個用來回放 ttyrec 所錄製的控制檯輸入過程的工具。
經過SSH進行文件同步的經典工具(核心算法)
MTR – traceroute 2.0,其是把 traceroute 和 ping 集成在一塊的一個小工具 用於診斷網絡。
socat是一個多功能的網絡工具,名字來由是」 Socket CAT」,能夠看做是netcat的N倍增強版。
netpipes 和socat同樣,主要是用來在命令行來進行socket操做的命令,這樣你就能夠在Shell腳本下行進socket網絡通信了。
iftop和iptraf能夠用來查看當前網絡連接的一些流量狀況。
Siege是一個壓力測試和評測工具,設計用於WEB開發這評估應用在壓力下的承受能力:能夠根據配置對一個WEB站點進行多用戶的併發訪問,記錄每一個用戶全部請求過程的相應時間,並在必定數量的併發訪問下重複進行。
Tsung 是一個壓力測試工具,能夠測試包括HTTP, WebDAV, PostgreSQL, MySQL, LDAP, and XMPP/Jabber等服務器。針對 HTTP 測試,Tsung 支持 HTTP 1.0/1.1 ,包含一個代理模式的會話記錄、支持 GET、POST 和 PUT 以及 DELETE 方法,支持 Cookie 和基本的 WWW 認證,同時還支持 SSL。
ledger 一個命令行下記賬的小工具。
TaskWarrior 是一個基於命令行的 TODO 列表管理工具。主要功能包括:標籤、彩色表格輸出、報表和圖形、大量的命令、底層API、多用戶文件鎖等功能。
下圖是TaskWarrior 2.0的界面:
cURL是 一個利用URL語法在命令行下工做的文件傳輸工具,1997年首次發行。它支持文件上傳和下載,因此是綜合傳輸工具,但按傳統,習慣稱cURL爲下載工 具。cURL還包含了用於程序開發的libcurl。cURL支援的通訊協定有FTP、FTPS、HTTP、HTTPS、TFTP、SFTP、 Gopher、SCP、Telnet、DICT、FILE、LDAP、LDAPS、IMAP、POP三、SMTP和RTSP。
rTorrent 是一個很是簡潔、優秀、很是輕量的BT客戶端. 它使用了 ncurses 庫以 C++ 編寫, 所以它徹底基於文本並在終端中運行. 將 rTorrent 用在安裝有 GNU Screen 和 Secure Shell 的低端系統上做爲遠程的 BT 客戶端是很是理想的。
aria2 是 Linux 下一個不錯的高速下載工具。因爲它具備分段下載引擎,因此支持從多個地址或者從一個地址的多個鏈接來下載同一個文件。這樣天然就大大加快了文件的下載速 度。aria2 也具備斷點續傳功能,這使你隨時可以恢復已經中斷的文件下載。除了支持通常的 http(s) 和 ftp 協議外,aria2 還支持 BitTorrent 協議。這意味着,你也可使用 aria2 來下載 torrent 文件。
TTYtter 是一個Perl寫的命令行上發Twitter的工具,能夠進行全部其餘平臺客戶端能進行的事情,固然,支持中文。腳本控、CLI控、終端控、Perl控的最愛。
Earthquake也是一個命令行上的Twitter客戶端。
Vifm 基於ncurses的文件管理器,DOS風格,用鍵盤操做。
Ranger用 Python 完成,默認爲使用 Vim 風格的按鍵綁定,好比 hjkl(上下左右),dd(剪切),yy(複製)等等。功能很全,擴展/可配置性也很是不錯。相似MacOS X下Finder(文件管理器)的多列文件管理方式。支持多標籤頁。實時預覽文本文件和目錄。
cowsay 不說了,以下所示,哈哈哈。還有xcowsay,你能夠本身搜一搜。
sl是什麼?ls?,呵呵,你會常常把ls 打成sl嗎?若是是的話,這個東西可讓你娛樂一下,你會看到一輛火車呼嘯而過~~,至關拉風。你可使用sudo apt-get install sl 安裝。
最後,再介紹一個命令中linuxlogo,你可使用 sudo apt-get install linuxlogo來安裝,而後,就可使用linuxlogo -L
來看一下各類Linux的logo了
(全文完)