給Linux小白看的命令行極簡教程

1、命令行真的好嗎

給Linux小白看的命令行極簡教程


程序員的使命

維基百科的解釋:

命令行界面(英語:command-line interface,縮寫:CLI)是在圖形用戶界面得到普及之前使用最為廣泛的用戶界面,它通常不支持鼠標,用戶通過鍵盤輸入指令,計算機接收到指令後,予以執行。也有人稱之為字符用戶界面(CUI)。

也有人這樣說:

熟練使用命令行是一種常常被忽視,或被認為難以掌握的技能,但實際上,它會提高你作為工程師的靈活性以及生產力

個人觀點:

有看到不同行業的人在評論區各種互撕,那到底用命令行是好還是不好呢..其實我覺得有時候花時間糾結這些問題是沒有意義的,你覺得有用就學,不看好它就不看了唄,等哪天你發現它的好了,打心裡想學了就去學唄,學習這東西,只要你願意開始,什麼時候都不晚。

任何東西都沒有絕對的說法,要看使用的場合,常說水能載舟,它亦能覆舟。

我自己會的命令行也不是很多,但真的打心裡羨慕那些把命令行用的很溜的大牛們,也在學習著熟悉大部分命令行,因為我覺得至少現在對我來說,它是極好的。

你是否注意到,在電影中一個“超級黑客”坐在電腦前,從不摸一下鼠標, 就能夠在30秒內侵入到超安全的軍事計算機中。這是因為電影製片人意識到, 作為人類,本能地知道讓計算機圓滿完成工作的唯一途徑,是用鍵盤來操縱計算機。

但不得不說不好的地方是

  • 命令行對新手不太友好,所以能否熟練應用命令行算是一個高手和新手能顯著拉開效率差距的點。
  • 娛樂的時候不友好,你要打遊戲或者要聊天,這個時候就還是圖形化界面佔上風了,當然對用戶來說也美觀
  • 看到有人這樣說—我就想讓照片上妹子臉上的小痘痘消失,怎麼用命令行實現呢

好在哪呢?

  • 人生苦短,效率,效率,效率,還是效率
  • 鼠標不適合快速操作,命令行通常比在菜單中點來點去更簡單,更容易,更直接。
  • 穩定,可移植性強
  • 開發省心省錢

2、感受下效率

試著玩玩,就能體會到它的效率了


給Linux小白看的命令行極簡教程


3、基本命令行


給Linux小白看的命令行極簡教程


4、這些你也要會(舉例說明)


給Linux小白看的命令行極簡教程


5、神奇的top

這裡選擇把top單獨介紹(信息量略大)

  • top的用途—作為日常管理工作中最常用也是最重要的Linux 系統監控工具之一,可以動態觀察系統進程狀況,顯示當前系統正在執行的進程的相關信息,包括進程ID、內存佔用率、CPU佔用率等默認值是每5秒更新一次,按q鍵可以退出。
  • 在你的終端輸入這條命令即可查看
  • $ top
  • 它會出現這些信息(本人電腦舉例)


給Linux小白看的命令行極簡教程


  • 第一行含義解釋
  • 21:11:46—當前系統時間
  • up 29 min—系統已經運行了29分鐘(在這期間系統沒有重啟過)
  • 2users—當前有2個用戶登錄系統
  • load average: 0.29, 0.28, 0.18—loadaverage—後面的三個數分別是1分鐘、5分鐘、15分鐘的負載情況
  • loadaverage—數據是每隔5秒鐘檢查一次活躍的進程數,然後按特定算法計算出的數值。如果這個數除以邏輯CPU的數量,結果高於5的時候就表明系統在超負荷運轉了
  • 第二行含義解釋
  • Tasks: 240 total, 1 running, 239 sleeping, 0 stopped, 0 zombie—系統現在共有240個進程,其中處於運行中的有1個,239個在休眠(sleep),stoped狀態的有0個,zombie狀態(殭屍)的有0個。
  • 第三行含義解釋
  • 2.6 us—用戶空間佔用CPU的百分比。
  • 0.8 sy—內核空間佔用CPU的百分比。
  • 0.0%ni—改變過優先級的進程佔用CPU的百分比
  • 96.6 id—空閒CPU百分比
  • 0.0 wa—IO等待佔用CPU的百分比
  • 0.0hi—硬中斷(HardwareIRQ)佔用CPU的百分比
  • 0.0si—軟中斷(SoftwareInterrupts)佔用CPU的百分比`
  • 第四行含義解釋
  • 8081084 total—物理內存總量(80GB)
  • 1533752 used—使用中的內存總量(14GB)
  • 4966452 free—空閒內存總量(49GB)
  • 1580880 buff/cache—緩存的內存量(15G)
  • 第五行含義解釋(swap交換分區信息)
  • 0 total—交換區總量(0K)
  • 0used—使用的交換區總量(0K)
  • 0free—空閒交換區總量(0K)
  • 5930172 avail Mem—可用內存(59G)
  • 第七行含義解釋(各進程(任務)的狀態監控)
  • PID—進程id
  • USER—進程所有者
  • PR—進程優先級
  • NI—nice值。負值表示高優先級,正值表示低優先級
  • VIRT—進程使用的虛擬內存總量,單位kb。VIRT=SWAP+RES
  • RES—進程使用的、未被換出的物理內存大小,單位kb。RES=CODE+DATA
  • SHR—共享內存大小,單位kb
  • S—進程狀態。D=不可中斷的睡眠狀態R=運行S=睡眠T=跟蹤/停止Z=殭屍進程
  • %CPU—上次更新到現在的CPU時間佔用百分比
  • %MEM—進程使用的物理內存百分比
  • TIME+—進程使用的CPU時間總計,單位1/100秒
  • COMMAND—進程名稱(命令名/命令行)


分享到:


相關文章: