linux命令行學習筆記(1)

文件目錄處理命令

  • ls -i (i參數可以顯示文件或者目錄的inode,inode是文件或者目錄用於標識的唯一數字)
  • ln -s 文件名 鏈接文件命(ln -s用來給文件創建一個符號鏈接,也叫軟鏈接;如果不加參數s那麼創建的就是硬鏈接;符號鏈接是一個實際存在的文件,它指向鏈接的那個原文件,鏈接文件和原文件inode不一樣,也就是說他們是完全不同的兩個文件,而硬鏈接創建的是一個獨立的虛擬文件,包含原始文件的位置和信息,可以理解爲一個指針指向對應的位置,從根本上看兩者是同一個文件,但是符號鏈接就像一個指針先指向鏈接文件,然後鏈接文件再指向原文件)
  • rmdir 可以刪除一個空目錄
  • rm -r 目錄 (r參數可以遞歸刪除目錄中的文件,然後再刪除目錄)
  • file 文件或者目錄(可以查看文件類型)
  • cat -n 文件(讀取整個文件內存,n參數代表顯示行數)
  • more 文件名(cat是一下子讀取整個文件,more可以分頁讀取文件,按回車逐行讀取,按空格分頁讀取,按b或者ctrb+b可以返回上頁,按q可以退出閱讀)
  • less 文件名(less比more更加強大,也是查看部分的文件內容,但是它可以非常舒適地進行上下左右的控制,當然也是按q退出)
  • tail 文件名(用來顯示文件末尾幾行,默認是顯示末尾10行,如果想自己定義行數可以加參數n,例如tail -n 5 文件名,可以查看文件的後5行,當然也可以去掉n,直接寫tail -5 文件名,效果是一樣的,tail的-f參數是它的一個絕妙的特性,它允許其他進程在操作文件時查看文件的實時內容,可以用來實時監控系統日誌,在我第一次嘗試時,我打開一個終端用tail -f來監控文件,用另一個終端用vim修改文件並保存,但是發現tail -f失效了,原因是vim是刪除原來文件,創建一個新文件,它的inode發生來變化,所以tail -f追蹤不到,我們可以用echo 字符串 >> 的方式進行追加,這時文件的inode不會改變)
  • head 文件名(head是顯示文件前幾行,默認也是顯示文件前10行,用法和tail一樣)

系統管理命令

  • ps(ps不加參數默認是顯示當前控制檯下屬於當前用戶的進程,一般只有bash shell和ps本身。ps的參數多而雜,而且有不同的風格,一般只要記住比較有用的即可,例如ps -ef,-e參數制定顯示所有運行在系統上的進程,-f參數則拓展輸出信息)
  • top(top命令可以用來實時監控運行的所有進程,第一行顯示當前時間,系統運行時間,登錄用戶數以及系統平均負載,比較重要的就是平均負載,平均負載有三個值,最近1分鐘、最近5分鐘、最近15分鐘,如果最近15分鐘平均負載高,那麼說明系統有問題,通常來說負載值超過了2,那麼就說明系統比較繁忙,第二行顯示進程的概要,主要是顯示有多少進程正在運行、休眠、停止、僵化,第三行顯示cpu概要信息,第四行顯示系統物理內存信息,第五行顯示swap空間信息,最後一部分顯示進程的詳細信息)
  • kill pid(kill可以結束對應pid的進程,默認是儘可能終止,linux下進程可以通過信號進行進程間通信,進程收到信號進行對應的處理,以下是linux進程信號的描述,1HUP掛起2INT中斷3QUIT4KILL無條件終止11SEGV段錯誤15TERM儘可能終止17STOP無條件停止運行但不終止18TSTP停止或暫停但繼續在後臺運行19CONT在STOP或STEP後恢復執行,kill默認是發送TERM信號,我們可以用kill -s KILL pid來強制殺死進程,當然也可以用kill -9 pid,也是一樣的效果)
  • killall 進程名(通過pid只能殺死單個進程,可以通過killall和進程名加通配符來殺死多個進程)
  • mount device directory(mount命令可以用來掛在設備,那麼我們爲什麼要掛載設備?在windows中我們插入一個u盤,系統會自動給這個u盤分配一個盤符,例如I:,那麼這個過程就是掛載,系統將u盤設備掛載到了I盤符下,linux只有一個/根目錄,系統啓動時一個分區掛載到來根下,成爲根分區,當我們插入設備,需要給該設備掛載到對應已存在的目錄下,也就是給這個設備分配一個目錄,這樣我們才能夠訪問這個設備。mount命令可以將device掛載到對應已存在的目錄下)
  • umount 目錄(umount命令可以卸載掛載在該目錄下的設備)
  • df(df可以查看系統已掛載磁盤的使用情況,加-h參數可以顯示容量單位,更加易讀)
  • du(當我們發現磁盤空間不足時,我們可以使用du命令查看對應目錄或文件佔了多少磁盤塊,du 目錄可以查看目錄以子目錄所佔的磁盤塊的量,-a參數可以查看目錄下文件所佔的空間,-h參數可以輸出所佔空間大小的單位,提高可讀性,du -sh *可以顯示當前目錄下每個文件或者目錄的總和大小)
  • sort 文件(sort可以對文件進行排序,默認是按行分割,每行作爲字符串進行遞增排序,如果想要把字符當作數字,那麼可以加參數-n)
  • grep 文本 文件(grep可以在文件中查找對應的字符,加-v參數可以反向輸出)
  • gzip 文件(gzip可以壓縮文件,加-d參數可以解壓)
  • tar -czvf testdir.tar.gz testdir/(將testdir目錄進行歸檔壓縮,c參數表示創建一個新的tar歸檔文件,z參數表示將輸出重定向給gzip命令來壓縮內存,v參數表示在處理文件時顯示,f表示輸出結果到文件)
  • tar -zxvf testdir.tar.gz -C Downloads/ (解壓到指定的Downloads目錄下,-C參數表示切換到指定目錄,x參數表示從已有tar歸檔文件中提取文件)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章