1. 多个正则表达式串联,使用'|'
egrep -v '^$|^[^1-9]' file_name
2. grep
几个特殊字符(正则表达式):
^ : []外 表示行首,[]内 表示取反:[^0-9];
$ : 表示行尾;
. : 一个字符;
*: 重复零次或者多次前一个字符,如:.* 表示匹配任意字符串,注意和 ls 命令的通配符 * 的区别,ls * 星号前不需要前导字符;
\{n,m\}: 连续n到m个的“前一个重复字符”,如:lo\{2,5\}g;
选项:
-B1 :Befor 1 line,表示输出匹配的一行和之前的一行,一个匹配输出两行;1可以是任何数值;
3. sed
sed 后面如果有两个以上的操作时,需要在每一个操作前添加 -e,如:sed -e '3a line 1-3 are deleted'-e '1,3d'
3. awk 以行为为处理单位,行内以字段为处理单位
$0 :表示当前处理行
$n :n>=1 当前行的第 n 字段
NF :当前行的字段总数
NR :当前的行号
FS :当前分割符,默认为空格,可以自己设置 '{FS=":"}'
参考: 鸟哥基础篇