zoukankan      html  css  js  c++  java
  • 正则表达式

     正则表达式很重要。
    正则表达式是用在字符串处理中的“表达式”,以行为单位进行字符串的处理,通过一些特殊符号的辅助,,可以让用户轻松搜索/替换某特定字符串。正则表达式对于系统管理员来说很重要,因为系统会产生很多信息,这些信息
    有的重要,有的仅是告知用户一些信息。此时,管理员可以通过正则表达式的功能将重要信息选取出来,产生便于查看的报表,简化管理流程。
    1、通过grep选取字符串
    语法:grep [-acinv] '搜索字符串' filename
    参数说明:-a:在二进制文件中,以文本文件的方式搜索数据
    -c:计算找到 '搜索字符串' 的行数
    -i:忽略大小写
    -n:输出行号
    -v:反向选择,即显示出没有 '搜索字符串' 的那一行
    例如:
    [root@rac1 tmp]# grep 'root' secure
    Aug 4 13:32:43 rac1 gdm[3140]: pam_unix(gdm:session): session opened for user root by (uid=0)
    Aug 4 13:33:54 rac1 sshd[3404]: Accepted password for root from 192.168.72.1 port 58118 ssh2
    Aug 4 13:33:54 rac1 sshd[3404]: pam_unix(sshd:session): session opened for user root by (uid=0)
    Aug 4 16:43:40 rac1 sshd[8006]: Accepted password for root from 192.168.72.1 port 59116 ssh2
    Aug 4 16:43:40 rac1 sshd[8006]: pam_unix(sshd:session): session opened for user root by (uid=0)
    [root@rac1 tmp]# grep -n 'root' secure
    9:Aug 4 13:32:43 rac1 gdm[3140]: pam_unix(gdm:session): session opened for user root by (uid=0)
    10:Aug 4 13:33:54 rac1 sshd[3404]: Accepted password for root from 192.168.72.1 port 58118 ssh2
    11:Aug 4 13:33:54 rac1 sshd[3404]: pam_unix(sshd:session): session opened for user root by (uid=0)
    12:Aug 4 16:43:40 rac1 sshd[8006]: Accepted password for root from 192.168.72.1 port 59116 ssh2
    13:Aug 4 16:43:40 rac1 sshd[8006]: pam_unix(sshd:session): session opened for user root by (uid=0)
    [root@rac1 tmp]# grep -c 'root' secure
    5

    grep
    说明
    ^word
    待搜索的字符串在行首
    word$
    待搜索的字符串在行尾
    .
    代表”任意一个字符“,一定是一个任意字符
    
    
    转义符,将特殊符号的意义去除
    *
    重复零个或多个前一个字符
    {n,m}
    连续n到m个的“前一个重复字符”
    []
    字符集合的重复特殊字符的符号
     
     
    egrep
    说明
     +
    重复字符次数一次或一次以上
     ?
    重复字符0次或以上
     |
    用或(or)的方式找出数个字符串
     ()
    找出“用户组”字符串
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    
    

















    最后写个例子:去除syslog.conf文件中空行及以#开头的行。
    [root@rac1 tmp]# grep -v '^$' syslog.conf | grep -v '^#'
    *.info;mail.none;authpriv.none;cron.none /var/log/messages
    authpriv.* /var/log/secure
    mail.* -/var/log/maillog
    cron.* /var/log/cron
    *.emerg *
    uucp,news.crit /var/log/spooler
    local7.* /var/log/boot.log
    
    
  • 相关阅读:
    Windows Server 2012配置开机启动项
    Windows Server 2019 SSH Server
    NOIP2017 senior A 模拟赛 7.7 T1 棋盘
    Noip 2015 senior 复赛 Day2 子串
    Noip 2015 senior复赛 题解
    Noip 2014 senior Day2 解方程(equation)
    Noip 2014 senior Day2 寻找道路(road)
    Noip 2014 senior Day2 无线网络发射器选址(wireless)
    Noip2014senior复赛 飞扬的小鸟
    Noip 2014 senior 复赛 联合权值(link)
  • 原文地址:https://www.cnblogs.com/zhaoshuangshuang/p/3236631.html
Copyright © 2011-2022 走看看