天天看點

《Linux指令行與shell腳本程式設計大全》 第二十七章 學習筆記

第一部分:Linux指令行

《Linux指令行與shell腳本程式設計大全》 第一章:初識Linux shell

《Linux指令行與shell腳本程式設計大全》 第二章:走進shell

《Linux指令行與shell腳本程式設計大全》 第三章:基本的bash shell指令

《Linux指令行與shell腳本程式設計大全》 第四章:更多的bash shell指令

《Linux指令行與shell腳本程式設計大全》 第五章:使用Linux環境變量

《Linux指令行與shell腳本程式設計大全》 第六章:了解Linux檔案權限

《Linux指令行與shell腳本程式設計大全》 第七章:管理檔案系統

《Linux指令行與shell腳本程式設計大全》 第八章:安裝軟體程式

《Linux指令行與shell腳本程式設計大全》 第九章:使用編輯器

第二部分:shell腳本程式設計基礎

《Linux指令行與shell腳本程式設計大全》 第十章:建構基本腳本

《Linux指令行與shell腳本程式設計大全》 第十一章:使用結構化指令

《Linux指令行與shell腳本程式設計大全》 第十二章:更多的結構化指令

《Linux指令行與shell腳本程式設計大全》 第十三章:處理使用者輸入

《Linux指令行與shell腳本程式設計大全》 第十四章:呈現資料

《Linux指令行與shell腳本程式設計大全》 第十五章:控制腳本

第三部分:進階shell程式設計

《Linux指令行與shell腳本程式設計大全》 第十六章:建立函數

《Linux指令行與shell腳本程式設計大全》 第十七章:圖形化桌面上的腳本程式設計

《Linux指令行與shell腳本程式設計大全》 第十八章:初識sed和gawk

《Linux指令行與shell腳本程式設計大全》 第十九章:正規表達式

《Linux指令行與shell腳本程式設計大全》 第二十章:sed進階

《Linux指令行與shell腳本程式設計大全》 第二十一章:gawk進階

《Linux指令行與shell腳本程式設計大全》 第二十二章:使用其他shell

第四部分:進階shell腳本程式設計主題

《Linux指令行與shell腳本程式設計大全》 第二十三章:使用資料庫

《Linux指令行與shell腳本程式設計大全》 第二十四章:使用Web

《Linux指令行與shell腳本程式設計大全》 第二十五章:使用E-mail

《Linux指令行與shell腳本程式設計大全》 第二十六章:編寫腳本實用工具

《Linux指令行與shell腳本程式設計大全》 第二十七章:shell腳本程式設計進階

第二十七章:shell腳本程式設計進階

監測系統統計資料

系統快照報告

1.運作時間

uptime指令會提供以下基本資訊:

目前時間

系統運作的天數,小時數,分鐘數

目前登入到系統的使用者數

1分鐘,5分鐘,15分鐘的平均負載

$ uptime 
 16:20:51 up 2 days,  3:11,  9 users,  load average: 0.01, 0.02, 0.05      

2.磁盤使用情況

$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1              47G  5.8G   39G  13% /
none                  2.9G  244K  2.9G   1% /dev
none                  2.9G  5.3M  2.9G   1% /dev/shm
none                  2.9G  456K  2.9G   1% /var/run
none                  2.9G     0  2.9G   0% /var/lock
/dev/sda7             197G  141G   47G  76% /home
/dev/sdb              459G  338G   98G  78% /home/su1216/android/source/cn3      

3.記憶體使用情況

free指令會顯示實體記憶體總量,以及其中空閑,使用。還會顯示交換記憶體的上述資料,包括核心緩沖區。

$ free
             total       used       free     shared    buffers     cached
Mem:       6025532    5966392      59140          0     967352    1849580
-/+ buffers/cache:    3149460    2876072
Swap:      2899696     174624    2725072      

4.僵屍程序

$ ps -al
F S   UID   PID  PPID  C PRI  NI ADDR SZ WCHAN  TTY          TIME CMD
1 S  1000  2279     1  0  80   0 - 21912 poll_s pts/0    00:00:36 fcitx
0 S  1000 27284     1  0  80   0 -  7330 poll_s pts/3    00:00:02 adb
0 R  1000 29962  2252  0  80   0 -  2737 -      pts/0    00:00:00 ps      

S列狀态為Z的為僵屍程序,上面沒有僵屍程序

$ ps -al | tr -s ' ' ' ' | cut -d ' ' -f 2,4
S PID
S 2279
S 27284
R 29959
S 29960
S 29961      

然後再grep -Z就可以找到僵屍程序以及對應的PID

系統統計資料報告

vmstat可以檢視虛拟機狀态

vmstat的輸出符号

符号 描述
r 等待CPU時間的程序數
b 處于不可中斷休眠中的程序數
swpd 使用的虛拟記憶體總量(機關:MB)
free 空閑的實體記憶體總量(機關:MB)
buff 用作緩沖區的記憶體總量(機關:MB)
cache 用作高速緩存的記憶體總量(機關:MB)
si 從磁盤交換進來的記憶體總量(機關:MB)
so 交換到磁盤的記憶體總量(機關:MB)
bi 從塊裝置收到的塊數
bo 發送給塊裝置的塊數
in 每秒的CPU中斷次數
cs 每秒的CPU上下文切換次數
us 用于執行非核心代碼的CPU時間所占用的百分比
sy 用于執行核心代碼的CPU時間所占用的百分比
id 處于空閑狀态的CPU時間所占的百分比
wa 處于等待I/O的CPU時間所占的百分比

 第一次運作vmstat時,它會顯示上次重新開機以來的平均負載值。

要得到目前統計資料,必須添加參數:

$ vmstat 1 3
procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu----
 r  b   swpd   free   buff  cache   si   so    bi    bo   in   cs us sy id wa
 0  0 191364 158988 246504 2287404    0    0    64    82   48   17  3  1 96  1
 0  0 191364 158888 246504 2287416    0    0     0     0  374  862  2  0 98  0
 0  0 191364 158888 246504 2287416    0    0     0     0  360  970  1  0 99  0      

問題跟蹤資料庫

預設情況下,mysql會忽略大小寫

在mysql中可以使用正則。比如:

select * from tableA where name REGEXP 'regular expression'

(筆記隻保留了必要的腳本,沒有什麼新的知識,全部腳本請參閱原書第27章576頁)

轉貼請保留以下連結

本人blog位址

http://su1216.iteye.com/

http://blog.csdn.net/su1216/

繼續閱讀