1. 程式人生 > >每個開發人員都應該知道的10個Linux命令

每個開發人員都應該知道的10個Linux命令

譯者注:讓你生活更簡單的幾個不常用的Linux命令。以下為譯文:

作為一個軟體工程師,學習Linux是我做過的最好的時間投資。因為它是一個使用者必須理解和維護的系統,每天的使用經驗就像在水坑中新增一滴水一樣。很長時間以後,水坑就變成了湖泊,甚至海洋。

今天,作為一名30歲的工程師,我仍然受益於多年前學到的知識,那時我是一個雄心勃勃的初學者。在另一篇部落格文章中,我更詳細地解釋了為什麼Linux更適合軟體開發人員。

在這篇文章中,我將分享我個人使用和推薦的一些不太流行但非常有用的Linux命令。如果你有一個蘋果筆記本,那很好,因為我提到的大部分命令也存在於OSX中。

10. file

返回一個指定檔案的資訊。例如,你可以用它來輸出一個圖片檔案的尺寸資訊。

file logo.png

輸出結果:

> PNG image data, 16 x 16, 8-bit/color RGBA, non-interlaced

9. iotop, powertop, nethogs

你如何監控Linux系統中發生了什麼?這三個命令可以幫上大忙;

* iotop: 將程序按磁碟寫次數排序,並且顯示程式寫磁碟的次數和頻率。

* powertop: 將程序按能量消耗列表顯示。這是一個重要的命令,尤其是當你在外面不能為你的電腦充電的時候。

* nethogs: 將程序按網路流量列表顯示。

8. tee

tee 將程式的輸出結果重定向,使得我們可以同時顯示和儲存結果,例如,新增一個新的條目到hosts檔案中:

echo "127.0.0.1 foobar" | sudo tee -a /etc/hosts

7. pidof, kill and pkill

這三個重要命令幫助你控制系統中執行的程式。

pidof 打印出正在執行程式的程序ID。例如,下面的命令將輸出nginx的程序ID:

pidof nginx

你可以把nginx的程序ID輸入到 kill 命令來終止它。

kill -USR2 $(pidof nginx)'

pkill 是一個快捷命令,可以終止匹配的程序:

pkill -f nginx

6. tmux

如果還你沒有安裝tmux,請一定安裝它。 tmux是你終端的優秀視窗和會話管理器。

5. tree

以樹狀格式列出目錄的內容。它有簡潔的選項,比如只顯示目錄;

tree -d

4. find

當我們在幾十個檔案中尋找特定的檔案時,這個命令可以幫忙。我將在這裡介紹幾個簡單的用例。

例1:列出所有的 CSS 檔案,(包括子目錄):

find . -type f -name "*.css"

例2:列出所有的 CSS 或HTML 檔案:

find . -type f \( -name "*.css" -or -name "*.html" \)

3. htop

著名的程序監視器。它有一個漂亮多彩的命令列介面。一些有用的快捷鍵:

* \ 過濾
* / 搜尋
* ,選擇排序條件
* k 傳送kill指令
* u 按使用者過濾結果
* t 開啟/關閉 樹形(tree) 模式
* -和+ 展開/關閉程序樹
* H 關閉顯示程序

2. chroot

魔術師們喜歡這個命令,因為它在給定的目錄中打開了一個新的TTY。這意味著,你可以建立一個資料夾,在其中設定一個新的Linux系統,並隨時切換到該“子系統”。

是不是很強大?

1. dialog

在命令列上與使用者互動的一種非常簡單而且不錯的方式。例如,下面的命令顯示了一個不錯的輸入框:

dialog --title "Oh hey" --inputbox "Howdy?" 8 55


它存在於Linux和OSX系統上,並支援許多其他型別的對話方塊:訊息框,選單,確認框,進度條…我為Happy Hacking Linux編寫的安裝嚮導就是用這個神奇的命令製作的!