美文网首页
shell练习

shell练习

作者: 繁花似锦之流年似水 | 来源:发表于2019-07-27 10:39 被阅读0次

    1、awk详解

    awk的最基本功能是在文件或者字符串中基于指定规则浏览和抽取信息

    语法:awk '{pattern + action}' {filenames}

    【注】

    pattern 可选 指的是正则匹配,如/root/

    action 可选,当时使用的时候必须加{}与模式pattern进行区分  指的是对匹配到的内容进行的操作,常见的就是printf打印输出到标准输出

    filenames 可选 指的操作的文件

    常用:NR用来表示行号      NF用来统计列

    -F用来设置分隔符,默认分隔符是换行符

    输出第10行

    awk 'NR == 10' file.txt      若找不到返回空

    sed -n 10p file.txt -n    表示只输出匹配行,p表示Print

    tail -n+10 /etc/passwd | head -1      (-n+10)表示从第10行开始输出

    统计/etc/passwd:文件名,每行的行号,每行的列数,对应的完整行内容

    awk -F ':' '{print "filename:" FILENAME ",linenumber:" NR ",columns:" NF ",linecontent:"$0}' /etc/passwd

    获取第12到31行的第一列的信息

    awk  -F ":"   '{if(NR<31 && NR >12) print $1}'  /etc/passwd

    查看最近登录最多的IP信息

    last | awk '{S[$3]++} END{for(a in S ) {print S[a],a}}' |uniq| sort -rh

    相关文章

      网友评论

          本文标题:shell练习

          本文链接:https://www.haomeiwen.com/subject/bhesrctx.html