華文網

每個開發者應該瞭解的 10 個 Linux 命令

作為一名軟體工程師,我做過的最明智的投資就是學習 Linux。

因為,在日常工作中,我們會經常與 Linux 系統打交道。而今天,作為一名 30 多歲的工程師,我仍受益於幾年前我碰巧學過的那些知識,所以技術學習需要不斷積累,不積跬步無以至千里。另外,在另一篇博客文章中,我將更詳細地解釋為什麼 Linux 對於軟體發展人員來說更加務實。

在本文中,我將分享一些小眾卻十分有用的 Linux 命令。如果你使用 Macbook,那剛剛好。因為我推薦的大多數命令也能應用於 OSX 系統。

10.file

返回給定資訊的類型。例如,你可以輸出圖像的尺寸資訊:

file logo.png

返回:

> PNG image data, 16 x 16, 8-bit/color RGBA, non-interlaced9.iotop, powertop, nethogs

你將如何監控 Linux 系統中發生的狀況? 這三個命令可以解決你的燃眉之急。

Iotop:通過磁片寫入對進程排序,並顯示程式寫入到磁片的數量與頻次。

Powertop:監控程序的電源使用情況。如果你無法及時充電時,這個命令就很重要了。

Nethogs:列出每個進程所使用的頻寬。

8.tee

將資料重定向到給定檔和螢幕上。例如,添加一個新的條目到 hosts 檔:

echo "127.0.0.1 foobar" | sudo tee -a /etc/hosts7.pidof, kill 和 pkill

這三條重要的命令將説明你控制系統中運行的程式。

Pidof:輸出正在運行程式的進程 ID。例如,以下命令將輸出 nginx 的進程 ID:

pidof nginx

你還可以通過kill命令,以及相應的數位來終止 nginx 進程:

kill -USR2 $(pidof nginx)'

pkill 是一個快捷命令,可以按照進程名稱終止所有的進程:

pkill -f nginx6.tmux

如果你還沒有安裝 tmux 的話,我極力推薦你安裝它。Tmux 是一款優秀的終端中的視窗和會話管理器。譯者注:如果你想詳細瞭解 Tmux,參見本篇文章。

5.tree

以樹狀結構列出目錄內容。

同時,通過設置相應的參數還可以只顯示目錄名稱:

tree -d4.find

當我們在指定目錄下尋找具體檔時,這個命令將幫你大忙。我將在這裡介紹幾個簡單的用例:

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

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

示例 2 - 列出所有的 CSS 與 HTML 檔:

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

Htop 是一個著名的進程檢視器。它擁有漂亮、多彩的命令列介面,以及一些實用的字母快速鍵:

- 增量進程篩檢程式;

/ - 搜索進程;

, - 選擇排序標準;

k - 終止進程;

u - 篩選某一特定使用者進程;

t - 顯示/隱藏樹形結構;

- 和 + - 展開/折疊選定的進程樹;

H - 顯示/隱藏使用者執行緒。

2.chroot

這個命令的神奇之處在於,它可以説明你在指定目錄中打開新的 TTY 。那麼,你就可以創建一個資料夾,在其中設置新的 Linux 系統,並隨時切換到該“子系統”。

1.dialog

方便與用戶交互的簡易命令。例如,下面的命令就顯示了一個漂亮的輸入框:

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

上述介紹的大多數命令都可應用在 OSX 系統上,並且支援許多其他類型的對話:訊息方塊、功能表、確認對話方塊、進度條等。

另外,我所編寫《 Happy Hacking Linux 》的安裝嚮導中也應用了上述相關命令。

感謝你的閱讀。若你有所收穫,歡迎點贊與分享。

注:

本文版權歸原作者所有,僅用於學習與交流;

如需轉載譯文,煩請按下方注明出處資訊,謝謝!

英文原文:10 Linux Commands Every Developer Should Know

作者:Azer Koçulu

譯者:IT程式獅

譯文位址:

http://www.jianshu.com/p/a86614d7cef9

更多文章:

67 個節省開發者時間的實用工具、庫與資源

精選!15 個必備的 VSCode 外掛程式

2017 年 20 個最佳的極簡 CSS 框架

10 個打造 React.js App 的最佳 UI 框架

2017 年 20 個最佳的極簡 CSS 框架

10 個打造 React.js App 的最佳 UI 框架