linux中awk的应用

Posted 孤~狼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux中awk的应用相关的知识,希望对你有一定的参考价值。

1.awk的基本认识和使用方法,参考下面链接

https://www.cnblogs.com/timxgb/p/4658631.html

 

2.awk中关于条件判断的用法,如

https://blog.csdn.net/shallnet/article/details/38821311

 

3.如果想根据域值中字符串的长度进行匹配怎么处理?

如:我想根据文件中某个域的字符串长度为依据进行操作,比如cat /etc/shadow 会列出所有的用户和密码,但是我只想要登陆用户的信息如root、edan,那么合适的方法就是根据$2的长度进行筛选,

 1 cat /etc/shadow
 2 root:$6$dwjAu.qXH/9kHHXo$JXoCNWfaSu5kEG8Ievwz0mt5VhpK.dYUV9QZWajUWouxrKObtu9Xs/QcqY4fgy01zkrLlj2mz.ZQzrPeW6XCJ/::0:99999:7:::
 3 bin:*:17632:0:99999:7:::
 4 daemon:*:17632:0:99999:7:::
 5 adm:*:17632:0:99999:7:::
 6 lp:*:17632:0:99999:7:::
 7 sync:*:17632:0:99999:7:::
 8 avahi:!!:17772::::::
 9 postfix:!!:17772::::::
10 tcpdump:!!:17772::::::
11 edan:$6$cWYNkm9fqWMu9/kn$KyhURpDWcFxrWhzap6BozIMgpAnspfsX2eL4b.XvsXFfQNi9QQJkzPO7cjxkwmSx7iDq12dzYA5OmjwK5SI47/::0:99999:7:::

操作如下:

cat /etc/shadow | awk -F: \'{if(length($2)>4=10) print}\'
root:$6$dwjAu.qXH/9kHHXo$JXoCNWfaSu5kEG8Ievwz0mt5VhpK.dYUV9QZWajUWouxrKObtu9Xs/QcqY4fgy01zkrLlj2mz.ZQzrPeW6XCJ/::0:99999:7:::
edan:$6$cWYNkm9fqWMu9/kn$KyhURpDWcFxrWhzap6BozIMgpAnspfsX2eL4b.XvsXFfQNi9QQJkzPO7cjxkwmSx7iDq12dzYA5OmjwK5SI47/::0:99999:7::

 通过length计算字符串的长度,只要比* 或者!!长度长就可以,不一定非要大于10

 

以上是关于linux中awk的应用的主要内容,如果未能解决你的问题,请参考以下文章

一篇速学企业linux awk命令详解与应用(上篇)

深度学企业linux awk命令详解与应用(下篇)

深度学企业linux awk命令详解与应用(下篇)

Linux三剑客awk的应用对比案例详解

linux的awk工具介绍

Linux文本处理三剑客之awk