此处命名为正则表达式可能不太恰当,大都是一些可能是shell脚本中用到的命令,暂时这样称呼,当然这些命令确实和正则表达式关系密切。
  
 1.grep
  
 grep -n '^a’ filename   #-n 打印所过滤出行的行号  过滤以某字符为开头的行
 grep -n '^[a-z]' filename  过滤以小写字母为开的行
  
 grep  '^$' filename  打印为空行的行号
 grep  -n '\.$' 打印以小数点为结尾的行
  
 ps:    $代表结尾
        ^代表开头
  
 grep -v '^$'  filename  打印不为空的行
 -v  反义,意为不包含某参数的行
 grep -v 'set' filename 打印文件中不包含set的行
  
  
 grep 常用参数:
  
 -c 只输出匹配行的计数
 -i 不区分大小写(只适用于单字符)
 -n 显示匹配行及行号
 -s 不显示不存在或无匹配文本的错误信息
 -v 显示不包含匹配文本的所有行
  
  
 2.sed [d删除 c替换 s 搜索替换]
 sed 'n1,n2 d'
 sed  -i s/a/b/g  filename   替换后并写入源文件
  
 3.awk是个非常牛逼的程序
 awk 命令1,命令2,命令3
awk '{print NR,NF,$1,$NF,}' file 显示文件file的当前记录号、域数和每一行的第一个和最后一个域。

FS 分隔符
NR 当前为第几行
FN 当前有几个字段

awk 默认的分隔符是一个空格
  
 4.last 这个月的登陆信息
  
 5.cut
 -d -f  结合作用,-d后接分隔符,-f后接数字。意为打印出以-d(后接内容)为分隔符分隔成的第几部分
string_line
 -c 以字符为单位取出固定范围的字符
 cut -c  20-25    即取出这一行第20到第25个字符
  
 6.uniq
 过滤重复内容
 uniq -c 在列边显示该行出现的次数
  
 7.sort (排序)
 -f 忽略大小写
 -b 忽略空格
 -r 反向排序
 -u 滤重
 -t 分隔符,默认为tab
 -k 按哪个字段来排序
  
 8.split  -bl prefix(文件名头)
 -b 按大小拆分 后接文件太小 ( 400b/400K/400m等)
 -l 按行拆分
  
  9.print
 
 
PS:以上命令可通过管道连接使用,以完成一些文本的处理