這篇文章針對平常在使用 Linux 時常會用到的指令做一些記錄,方便之後查詢使用,此篇文章會不斷更新。

系統

$ top -d 1            // 觀看系統資源占用狀況 (每秒更新)
$ ulimit -a           // 觀看系統對單一用戶限制
$ df -h               // 觀看硬碟使用狀況
$ lastb -a            // 嘗試登入失敗紀錄
$ last                // 目前使用者登入歷史紀錄
$ lastlog             // 各使用者最後登入時間
$ watch -n 1 "指令"    // 每秒監測指令運行結果

基本

$ find [目錄] -type f | xargs --no-run-if-empty rm   // 刪除目錄下的大量資料

網路

$ /etc/rc.d/init.d/iptables save   // 將現有防火牆設定存檔
$ iptables -L -nv                  // 觀看現有防火牆設定
$ netstat -na                      // 顯示主機上所有已建立的連線。
$ netstat -na | grep :80           // 顯示所有 port 80 的連線。
$ netstat -ntu | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -n                        // 計算每一個 ip 在主機上建立的連線數量。
$ netstat -ntu | grep ESTAB | awk '{print $5}' | cut -d: -f1 | sort | uniq -c | sort -nr          // 列出每個 ip 建立的 ESTABLISHED 連線數量。
$ netstat -plan | grep :80 | awk {'print $5'} | cut -d: -f 1 | sort | uniq -c | sort -nk 1        // 列出每個 ip 建立的 port 80 連線數量。

檔案搜尋

$ find ./目錄名 -name "*.副檔名" -exec grep -H "搜尋字串" {} \;      // 搜尋特定檔案裡面是否有符合的字串
$ sed -i 's/字串a/字串b/gi' 檔名                                    // 將檔案裡的字串 a 置換成字串 b

壓縮與解壓縮

$ tar zcvf file.tar.gz dir   // 壓縮成 tar.gz
$ tar zxvf file.tar.gz       // 解壓縮 tar.gz
$ zip -r file.zip dir        // 壓縮成 zip
$ unzip file.zip             // 解壓縮 zip

VIM 操作

:%s/搜尋字串/取代字串/g        // 取代
:set nu                     // 顯示行數
:set nonu                   // 隱藏行數
:/搜尋字串                   // 向下搜尋字串 (n 下一個、N 上一個)
:?搜尋字串                   // 向上搜尋字串 (n 上一個、N 下一個)

參考資料