Monthly Archives: March 2015

zabbix 多端口监控 MySQL

By | 2015/03/18

介绍 使用 zabbix 的 low-level 自动发现功能完成单主机多端口的监控, 详见low_level_discovery, 整体上监控类似 percona 的 zabbix 监控插件, 不过使用 mymonitor.pl 替换了脚本 ss_get_mysql_stats.php, 而且配置有点不同. 具体代码及配置详见: zabbix_mysql 1. 结构说明: zabbix_mysql/ |– README.md |– bin | |– get_mysql_stats_wrapper.sh # 对 mymonitor.pl 运行结果的一个封装脚本, 默认 5 分钟运行一次 | |– mymonitor.pl # 等同 ss_get_mysql_stats.php 脚本 | `– mysql_port.pl # 自动发现 MySQL 端口的脚本, 返回 json 格式的输出 |– install.sh… Read More »

Perl one line command – 常用正则

By | 2015/03/04

Perl one line command – 常用正则 本章说明一些常用的正则表达式, 比如匹配 IP 地址, HTTP 头信息, email 地址等. 1. 匹配 IPv4 地址 IP 地址格式 xxx.xxx.xxx.xxx, 使用 \d 来匹配数字,通用的做法如下: /^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/ {1,3}表示匹配最少一个, 最多3个数字,这个表达式没有检查地址的有效性(不能大于255),所以也能匹配出无效的地址,但是对于有效的地址都能匹配出来; 我们可以发现前三部分是一样的, 可以改成: /^(\d{1,3}\.){3}\d{1,3}$/

Perl one line command – 输出和删除行

By | 2015/03/04

Perl one line command – 输出和删除行 本章介绍使用 Perl 命令行输出和删除指定的行内容, 比如 输出/删除 指定的行, 重复的行, 匹配的行等. 输出和删除操作是相对的( -i 参数 ), 明白了如何输出, 删除也就尽在掌握. 1. 输出文本 n 行内容 perl -ne ‘print ; exit’ file perl -i -ne ‘print ; exit’ file

Perl one line command – 转义和替换

By | 2015/03/03

Perl one line command – 转义和替换 本章使用 Perl 命令行来更改, 转换, 替换文本内容, 同时会介绍 base64 的编解码, url 转义, HTMl转义等相关的信息. 1. ROT13 详见 http://en.wikipedia.org/wiki/ROT13 ROT13(回转13位,rotateby13places,有时中间加了个减号称作ROT-13)是一种简易的置换暗码,比如 A 加密后为 N, B 为 M, a 为 n, b 为 m .它是一种在网路论坛用作隐藏八卦、妙句、谜题解答以及某些脏话的工具,目的是逃过版主或管理员的匆匆一瞥, 本身上ROT13是它自己逆反;也就是说,要还原ROT13,套用加密同样的算法即可得,故同样的操作可用再加密与解密. 我们使用 y/// 和 tr/// 操作符说明如下: perl -le ‘$string = “hello”; $string =~ y/A-Za-z/N-ZA-Mn-za-m/; print $string’ perl -le ‘$string =… Read More »

Perl one line command – 字符串与数组

By | 2015/03/03

Perl one line command – 字符串与数组 本章使用 Perl 命令行说明如何创建字符串和数组, 包括生成密码, 创建指定长度字符串, 查找字符串中的数值等, 也会介绍一些特殊变量比如 $, 和 @ARGV 等, 同样以示例说明. 1. 生成并打印字符 # perl -le ‘print a..z’ abcdefghijklmnopqrstuvwxyz 在 Perl 中 .. 是范围操作符, 在列表环境中, 上述命令表示打印从 a 到 z 的字母, 也可以使用 $, 和 join 来指定字母之间的分隔符: # perl -le ‘print join “, “,(a..z)’ a, b, c, d, e, f,… Read More »