grep命令的使用以及正则表达式

正则表达式(regular expression):
    使用一些特殊符号+字母和数字按照某个规则组合成一个公式来表示某个意思这就叫正则表达式
    元字符:有特殊含义的字符,可以表示其他的含义
    ^可以代表以什么开头 ^junjie
    $可以代表以什么结尾 wang$
    ?表示前面的字符出现0次或者一次
    +表示前面的字符出现一次以上
    *表示前面的字符出现0次或者任意次
    .代表任意单个字符
    .* 代表所有的字符
    \s 空格
    [abc] 匹配[]里的字符
    [^a-z] 取不包含a-z的,是一个一个字符去看    与-v有区别,是一行一行的去看  颗粒度问题
    {n} 前面字符出现n次
    {m,n} 前面出现m-n次
    [a-z],[0-9],[a-Z],[0-Z]
    单词的定界符号
        \< 表示单词以什么开头
            \<san 单词以san开头
        \> 表示单词以什么结尾
        \b
            \<sanchuang\> 等同于 \bsanchuang\b
    转义字符 \  \\
    ? * +默认只能修饰前面一个字符
    利用圆括号()可以实现多个字符分组
    在圆括号中利用|实现或者的功能
    
    
egrep,sed,awk 支持正则表达式
|在grep里是或者的意思

    实例:
        curl https://www.sanchuangedu.cn >sc.html
        cat sc.html |egrep ".jpg|.png"
        cat name.txt | egrep "shen.{4}" shen后面四个字符
        cat name.txt | egrep "^&" 空行
        cat /etc/ssh/sshd_config |egrep "^#" 取以#开头
        cat /etc/ssh/sshd_config |egrep -v "^#|^$" 去掉以#开头和空行
        cat name.txt |egrep  "^[^0-9]" 不是以数字开头的行
        egrep "\b[a-Z]{13}\b" 过滤出13个字符的单词

curl:linux里字符界面的浏览器(http,ftp,https等)
grep
    -v 反转查找,输出不匹配的
    -i 不区分大小写
    -n 顺便输出行号
    -o 只显示匹配的内容  only-match
    -A after 在之前
    -B before 在之后
    -C centext 上下文
    -r 递归查找
    -E 对正则表达式支持
        1.基本正则
            * . ^ $
        2.扩展正则
            | ? + {}
            
uniq(unique) 去重
    默认情况下只能去除重复的行
    -c 统计重复的次数
    
sort 排序
    默认情况下按照每行的第一个字符的ascll码值进行排序  升序
    sort的分隔符是空白(空格和tab) 多个和单个一样
    -n 可以进行数值进行排序 默认升序
    -k 指定列排序
    -r 降序
    -t 指定分隔符
    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值