天天看點

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

作為一名軟體工程師,學習Linux是我所做的最好投資。因為Linux是一個使用者必須了解和維護的系統,是以日常體驗就像向水坑加水滴一樣。時間一長,水坑就會成為湖泊,甚至是海洋。是以我們必須杜微慎防。

今天,我作為一名30多歲的工程師,仍然受益于我幾年前機緣巧合學到的一大堆知識,在我還是一個具有雄心壯志的初學者的時候。在另一篇部落格中,我已經更詳細地解釋了為什麼Linux對于軟體開發人員來說是一個更加務實的選擇。

在這篇博文中,我将分享一些不太受歡迎但非常有用的Linux指令,我個人極力推薦。如果你是在Macbook上工作,那也沒關系,因為我提到的大部分指令也存在于OSX系統中。

<a href="http://s4.51cto.com/wyfs02/M02/08/36/wKiom1neF1jT2-kFAACpNZSpbfg981.jpg-wh_651x-s_2353987450.jpg" target="_blank"></a>

10.file

傳回給定檔案的資訊。例如,你可以輸出圖像的尺寸資訊:

file logo.png 

傳回:

&gt; PNG image data, 16 x 16, 8-bit/color RGBA, non-interlaced 

9.iotop,powertop,nethogs

你怎麼監控Linux系統中正在發生的情況?這三個指令是你的救星:

iotop:通過磁盤寫入對程序進行排序,并顯示程式寫入磁盤的次數和頻率。

powertop:通過能量消耗列出流程。當你在外面,在某個地方你不能為筆記本電腦充電的地方時,這是一個至關重要的指令。

nethogs:通過網絡流量列出程序。

8.tee

它會分割程式的輸出,進而可以列印和儲存。例如,添加一個新的條目到hosts檔案;

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

7.pidof,kill和pkill

這三個重要的指令可以幫助你控制系統中的運作程式。

pidof列印出正在運作的程式的程序ID。例如,以下指令将輸出nginx的程序ID:

pidof nginx 

你可以通過kill指令殺死nginx:

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發送殺死信号

u使用者過濾結果

t打開/關閉樹模式

-和+ 折疊 / 展開標明的流程樹

H關閉顯示線程

2.chroot

很多人喜歡這個指令,是因為它在給定的目錄中打開了一個新的TTY。這意味着,你可以建立一個檔案夾,在其中設定一個新的Linux系統,并随時切換到該“子系統”。

是不是很強大?

1.dialog

在指令行上與使用者互動的一種非常簡單又良好的方式。例如,下面的指令展示了一個不錯的輸入框:

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

它既存在于Linux,也存在于OSX系統上,并支援許多其他類型的對話框;消息框,菜單,确認,進度條…我為Happy Hacking Linux編寫的安裝向導就是用這個令人驚歎的指令制作的! 

原文釋出時間為:2017-10-11 

本文作者:小峰翻譯

本文來自雲栖社群合作夥伴“51CTO”,了解相關資訊可以關注。

繼續閱讀