第二十七章: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/

《Linux命令行与shell脚本编程大全》 第二十七章 学习笔记的更多相关文章

  1. 《Linux命令行与shell脚本编程大全》23章24章

    第二十三章 使用其他shell bash shell是linux发行版中最广泛使用的shell.但是它并不是唯一的选择,还有其他的shell可以供你选择. 23.1 什么是dash shell 百度百 ...

  2. 《Linux命令行与shell脚本编程大全》第九章 安装软件程序

    包管理系统(PMS):用来进行软件安装.管理和删除的命令行工具 9.1包管理基础 1.主流的Linux发行版都采用了某种形式的包管理系统来控制软件和库的安装 2.PMS用一个数据库来记录:系统上安装了 ...

  3. Linux命令行与shell脚本编程大全.第3版(文字版) 超清文字-非扫描版 [免积分、免登录]

    此处免费下载,无需账号,无需登录,无需积分.收集自互联网,侵权通知删除. 点击下载:Linux命令行与shell脚本编程大全.第3版 (大小:约22M)

  4. 《Linux命令行与shell脚本编程大全 第3版》创建实用的脚本---11

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

  5. 《Linux命令行与shell脚本编程大全 第3版》高级Shell脚本编程---47

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

  6. 《Linux命令行与shell脚本编程大全 第3版》Shell脚本编程基础---57

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

  7. 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---57

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

  8. 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---56

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

  9. 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---55

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

  10. 《Linux命令行与shell脚本编程大全 第3版》Linux命令行---54

    以下为阅读<Linux命令行与shell脚本编程大全 第3版>的读书笔记,为了方便记录,特地与书的内容保持同步,特意做成一节一次随笔,特记录如下:

随机推荐

  1. jQuery 获取并设置 CSS 类

    通过 jQuery,可以很容易地对 CSS 元素进行操作. 切换 CSS 类 jQuery 操作 CSS jQuery 拥有若干进行 CSS 操作的方法.我们将学习下面这些: addClass() - ...

  2. JS 通过系统时间限定 动态添加 select option

    虽然是个简单的效果,还是需要积累一下,记录一下: 在八月一号之后,删除最后一项,新添加2016级 — — 2015级 2014级 2013级 2012级 在六月一号之后,删除最后一项,新添加2016级 ...

  3. SGU 195. New Year Bonus Grant

    时间限制:0.75s 空间限制:4M 题意: 在一颗树(最多500000个节点)中,可以对节点染色,但是一个节点染了色后,它的父节点和兄弟节点都不能再染了,求最大的染色节点数,并输出所有染色节点. S ...

  4. JQUERY、AJAX双击DIV,直接修改DIV内的内容

    最近在做后台功能开发的时候,用到对排序字段的修改,感觉只为了修改一个排序值,而要重新进入编辑页比较麻烦,于是自己动手写…… 最近在做后台功能开发的时候,用到对排序字段的修改,感觉只为了修改一个排序值, ...

  5. IPython,让Python显得友好十倍的外套——windows XP/Win7安装详解

        前言 学习python,官方版本其实足够了.但是如果追求更好的开发体验,耐得住不厌其烦地折腾.那么我可以负责任的告诉你:IPython是我认为的唯一显著好于原版python的工具.   整理了 ...

  6. 《bunzip2命令》-linux命令五分钟系列之八

    本原创文章属于<Linux大棚>博客. 博客地址为http://roclinux.cn. 文章作者为roc 希望您能通过捐款的方式支持Linux大棚博客的运行和发展.请见“关于捐款” == ...

  7. 根据打开页面加载不同Js

    根据打开页面加载不同Js //根据打开页面加载不同JS $(document).ready(function(){ var href = document.URL; /*获取当前页面的URL*/ if ...

  8. thinkphp微信开发之jssdk图片上传并下载到本地服务器

    public function test2(){ $Weixin = new \Weixin\Controller\BaseController(); $this->assign('signPa ...

  9. ueditor的过滤、转义、格式丢失问题

    1. 过滤 http://www.cnblogs.com/Olive116/p/3464495.html 2. 转义 http://segmentfault.com/q/101000000048928 ...

  10. MySQL Explain 结果解读与实践

    Explain 结果解读与实践   基于 MySQL 5.0.67 ,存储引擎 MyISAM .   注:单独一行的"%%"及"`"表示分隔内容,就象分开&qu ...