awk处理筛选内容

原创 2016年08月30日 11:24:00

我们NIS服务器上很多帐号无效之后只删除了passwd文件里的帐号名,group文件没有修改,导致现在很多不存在的IDgroup里面加入了很多组。现在要把这些无效IDgroup文件移除,请问有什么好办法

 

举例:

passwd

aaa:59029:59029::/local/aaa:/bin/bash

bbb:59030:59030::/local/bbb:/bin/bash

ccc:59031:59031::/local/ccc:/bin/bash

 

group:

group1::341:aaa,bbb

group2::341:ccc,ddd

group3::341:bbb,eee

 

现在如何把不存在的帐号dddeee删除呢 ?

处理办法:

awk -F':' 'NR==FNR{a[$1]=1;next}{t=split($NF,b,",");g="";for(i=1;i<=t;i++)if(a[b[i]]){g=g?g","b[i]:b[i];$NF=g}}1' passwd  group

这种处理方法:需要注意的是 如果在处理文本的过程中需要有多个或者一个的情况,这时候三元表达式是比较好的处理方式。     

版权声明:本文为博主原创文章,未经博主允许不得转载。

awk根据第一个字段打印内容

一个字段包含各种不同的值,有的值出现了多次,有的值只出现一次。如果 (1)该值只出现一次,那么就打印“1 Time\n $0” (2)出现两次或三次,则打印“2 Time\n $0\n$0”意思是...
  • fall221
  • fall221
  • 2013年04月14日 10:48
  • 1195

awk:快速入门(简单实用19例+鸟哥书内容)

这篇很好http://manual.blog.51cto.com/3300438/932958 以下引自:http://www.cnblogs.com/zhuyp1015/archive/201...

awk逐行比较两个文件的内容

awk内置变量 awk有许多内置变量用来设置环境信息,这些变量可以被改变,下面给出了最常用的一些变量。 Shell之awk命令" style="margin:0px; padding:...

AWK_样式扫描和处理语言

  • 2014年10月17日 10:33
  • 392KB
  • 下载

SHELL:awk,sed,常用文本处理命令

awk: awk ‘print{$1,$2}’ grade.txt             打印单独记录 awk ‘BEGIN print{“Name         Belt/n--------...

AWK是一种优良的文本处理工具

  • 2011年08月12日 10:17
  • 27KB
  • 下载

AWK文件处理总结

  • 2011年10月27日 10:32
  • 49KB
  • 下载

用Python和AWK结合处理Access log请求信息

本样例主要用于处理Tomcat及nginx的access访问日志请求信息,是一个初步的版本。在此基础之上,还可以进行多线程、在Hadoop上运行等优化处理,有待完善。 1、示例原始access_log...

linux文本处理工具awk命令详解

  • 2017年10月28日 19:33
  • 276KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:awk处理筛选内容
举报原因:
原因补充:

(最多只允许输入30个字)