zoukankan      html  css  js  c++  java
  • linux的awk使用

    awk统计password文件中,登陆shell为“/sbin/nologin”的用户个数

    [root@localhost ~]# cat passwd | grep "/sbin/nologin"
    bin:x:1:1:bin:/bin:/sbin/nologin
    daemon:x:2:2:daemon:/sbin:/sbin/nologin
    adm:x:3:4:adm:/var/adm:/sbin/nologin
    lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
    mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
    operator:x:11:0:operator:/root:/sbin/nologin
    games:x:12:100:games:/usr/games:/sbin/nologin
    ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
    nobody:x:99:99:Nobody:/:/sbin/nologin
    systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin
    dbus:x:81:81:System message bus:/:/sbin/nologin
    polkitd:x:999:997:User for polkitd:/:/sbin/nologin
    postfix:x:89:89::/var/spool/postfix:/sbin/nologin
    sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin
    mysql:x:27:27:MariaDB Server:/var/lib/mysql:/sbin/nologin
    apache:x:48:48:Apache:/usr/share/httpd:/sbin/nologin

    #方法一

    [root@localhost ~]# cat passwd | grep "/sbin/nologin"| wc -l     
    16

    #方法二

    [root@localhost ~]# awk -F: '{for(i=1;i<=NF;i++){if($i=="/sbin/nologin"){n++}}}END{print n}' passwd
    16

    #方法三

    [root@localhost ~]# awk -F: '{shells[$7]++} END{for(i in shells){if(i=="/sbin/nologin"){print shells[i],i}}}' passwd
    16  /sbin/nologin

    只打印文件的奇数行

    [root@localhost linshi]# seq 1 10 > c.txt && seq 1 10 >> c.txt

    [root@localhost ~]# awk '{a[NR]=$0}END{for(i=1;i<=NR;i+=2){print i,a[i]}}' c.txt
    1 1
    3 3
    5 5
    7 7
    9 9
    11 1
    13 3
    15 5
    17 7
    19 9

    [root@localhost ~]# awk '{a[NR]=$0}END{for(i in a){print i,a[i]}}' c.txt | wc -l
    20

    [root@localhost linshi]# awk '{a[NR]=$0}END{for(i in a){print i,a[i]}}' c.txt
    17 7
    4 4
    18 8
    5 5
    19 9
    6 6
    7 7
    8 8
    9 9
    10 10
    20 10
    11 1
    12 2
    13 3
    14 4
    1 1
    15 5
    2 2
    16 6
    3 3

    #默认是按照awk算法所得到的结果进行排序

     

  • 相关阅读:
    页面布局
    Vue学习指南
    《前端JavaScript重点》学习笔记 6-12
    复习3----作用域和闭包
    复习1-变量类型和计算
    复习2--js原型与原型链2
    慕课网《前端JavaScript面试技巧》学习笔记(2)-原型和原型链
    旋转图片
    UITextView添加行距
    YYKit之YYText
  • 原文地址:https://www.cnblogs.com/xiaofeng666/p/11629493.html
Copyright © 2011-2022 走看看