2016年3月16日 星期三

mpstat 顯示 多 core 目前CPU使用率


這裡的CPU 使用率計算方法是 : 100% - idle %=目前CPU使用率

不管是top 或者是 mpstat 都是由 linux 的/proc/stat  檔案擷取,有興趣的朋友可以去google一下。

mpstat 使用前要安裝systat

sudo apt-get install sysstat

使用方法:
Usage: mpstat [ options ] [ <interval> [ <count> ] ]
Options are:
[ -A ] [ -u ] [ -V ] [ -I { SUM | CPU | SCPU | ALL } ]
[ -P { <cpu> [,...] | ON | ALL } ]


mpstat -P ALL 可以顯示所有的CPU 的使用率。

zino@ubuntu:~$ mpstat -P ALL

Linux 3.19.0-25-generic (ubuntu)        03/16/2016      _x86_64_        (2 CPU)
04:50:51 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idl
04:50:51 PM  all    0.04    0.00    0.28    0.05    0.00    0.00    0.00    0.00    0.00   99.64
04:50:51 PM    0    0.04    0.00    0.28    0.04    0.00    0.00    0.00    0.00    0.00   99.64
04:50:51 PM    1    0.03    0.00    0.27    0.06    0.00    0.00    0.00    0.00    0.00   99.63

可選擇 每秒 顯示幾秒後計算

zino@ubuntu:~$ mpstat -P ALL 1 3

Linux 3.19.0-25-generic (ubuntu)        03/16/2016      _x86_64_        (2 CPU)

05:26:34 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
05:26:35 PM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
05:26:35 PM    0    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
05:26:35 PM    1    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00

05:26:35 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
05:26:36 PM  all    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
05:26:36 PM    0    0.00    0.00    1.00    0.00    0.00    0.00    0.00    0.00    0.00   99.00
05:26:36 PM    1    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00

05:26:36 PM  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
05:26:37 PM  all    0.00    0.00    0.50    0.00    0.00    0.00    0.00    0.00    0.00   99.50
05:26:37 PM    0    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00
05:26:37 PM    1    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00


Average:     CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
Average:     all    0.00    0.00    0.17    0.00    0.00    0.00    0.00    0.00    0.00   99.83
Average:       0    0.00    0.00    0.33    0.00    0.00    0.00    0.00    0.00    0.00   99.67
Average:       1    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00    0.00  100.00


mpstat -P ALL | grep -v 'CPU\|all\|^$' |awk '{print $1" "$2 " CPU "$3" "100-$13"%"}'


zino@ubuntu:~$ mpstat -P ALL | grep -v 'CPU\|all\|^$' |awk '{print $1" "$2 " CPU "$3" "100-$13"%"}'
04:34:56 PM CPU 0 0.39%
04:34:56 PM CPU 1 0.37%


grep 空白行方法:https://blog.longwin.com.tw/2012/09/grep-filter-null-line-2012/

2016年3月4日 星期五

使用ssh傳送 bash 指令

使用ssh傳送  bash 指令

傳送命令很簡單,只要在ssh後方加上單引號包起指令就可以,要注意的是只有在bash內的指令才可以,如果引用路徑是寫在.bashrc的則無法呼叫。

格式:

ssh user@host   'commend'

範例:

ssh  uesr@192.168.1.1  'ls -al'

單引號內是可以串接指令的用 ';' 就可以了。

例如: 

ssh  uesr@192.168.1.1  'netstat;grep 123'