`
xitong
  • 浏览: 6203668 次
文章分类
社区版块
存档分类
最新评论

【redhat5.5】linux中的awk总结

 
阅读更多
1 打印UID在30-40之间的用户名
 awk -F : '{ for(i=30;i<=40;++i) if (i==$3) print $1,$3}' /etc/passwd

2 打印第5-10行,输出用户名和行号
awk -F : '{if(NR>=5&&NR<=10) print NR,$1}' /etc/passwd 

3 打印奇数行
 awk -F : '{if(NR%2!=0) print $0}' /etc/passwd | head -5

4 打印偶数行

  awk -F : '{if(NR%2==0) print $0}' /etc/passwd | head -5


5 打印UID不等于GID的用户名
  awk -F : '{if($1!=$5) print $1,$5}' /etc/passwd 

6 打印没有指定shell的用户名
  awk -F : '{if($7=="") print $1}' /etc/passwd 

7 打印1-1000以内能被7整除的数和包含7的数

awk -f test7.awk

1 BEGIN{
         for ( i=1;i<=1000; i++){
         if(i%7==0)  printf ("\033[1;33m%d\033[0m\t",i)
         else if (i%10==7)  printf ("%d\t",i)
         else if ((i/10)%10==7) printf ("%d\t",i)
         else if ((i/100)%10==7)  printf ("%d\t",i)
    
    }
     print ""
  }


 BEGIN{
     for( i=1; i<=1000;i++)
         if (i~/7/ || i%7==0) printf i "\t"
  }
        




分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics