-F 指定分割符号

print 外层的引号必须是单引号 $n不能被解析

[root@bogon ~]# cat .txt
a:b:c:d
a1:b1:c1:d1
a2:b2:c2:d2
a_: :c:dddd
[root@bogon ~]# awk -F ':' '{print $1}' .txt
a
a1
a2
a_
[root@bogon ~]# awk -F ':' '{print $2}' .txt
b
b1
b2
[root@bogon ~]# awk -F ':' '{print $1,$4}' .txt
a d
a1 d1
a2 d2
a_ dddd

匹配第三列含有数字的

awk -F ':' '$3~/[0-9]/' .txt

$0 表示整行
~ 模糊匹配
== 精准匹配
匹配第三列含有数字只显示第一列和第三列

awk -F ':' '$3~/[0-9]/ {print $1,$3}' .txt 

重新指定分割符 OFS要放在前面 打印出的不能是$0

awk -F ':' '$3~/[0-9]/ {OFS="#";print $1,$3}' .txt
awk -F ':' '$1=="a2"||NR>3 {print $0}' .txt

NR 行号
NF 被分割后的列数
||或者 ,&& 且
第一段等于a2或者 行号>3的结果

[root@bogon ~]# awk -F ':' '$3~/[0-9]/' .txt
a1:b1:c1:d1
a2:b2:c2:d2
[root@bogon ~]# awk -F ':' '$3~/[0-9]/ {print $1,$3}' .txt
a1 c1
a2 c2
[root@bogon ~]# awk -F ':' '$3~/[0-9]/ {OFS="#";print $1,$3}' .txt
a1#c1
a2#c2

精准匹配
字符必须加引号

awk -F ':' '$1=="a2" {print $0}' .txt
[root@bogon ~]# awk -F ':' '$1=="a2" {print $0}' .txt
a2:b2:c2:d2
[root@bogon ~]# awk -F ':' '$1=="a2"||NR>3 {print $0}' .txt
a2:b2:c2:d2
a_: :c:dddd
表达式
[root@bogon ~]# awk -F ':' '$1=$2$3 {print $0}' .txt
bc b c d
b1c1 b1 c1 d1
b2c2 b2 c2 d2
c c dddd

查找分割后 列数 是3到5个的

awk -F ':' 'NF>=3&&NF<=5 {print}' .txt
[root@bogon ~]# cat .txt
a:b:c:d
a1:b1:c1:d1
e:f
e1:f1:g1
e2:f2:g2:h2:i:j:k
[root@bogon ~]# awk -F ':' 'NF>=3&&NF<=5 {print}' .txt
a:b:c:d
a1:b1:c1:d1
e1:f1:g1
awk -F ':' '{OFS="#";print $NR,$NF}'  .txt
[root@bogon ~]# cat .txt
a:b:c:d
a1:b1:c1:d1
e:f
e1:f1:g1
e2:f2:g2:h2:i:j:k
[root@bogon ~]# awk -F ':' '{OFS="#";print $NR,$NF}' .txt
a#d
b1#d1
#f
#g1
i#k

对于以上 $NR,$NF的解析
1,4
2,4
3,2
4,3
5,7

awk常见基本使用的更多相关文章

  1. linux awk 常见字符串处理

    awk指定输出列: awk '{print $0} file' #打印所有列awk '{print $1}' file #打印第一列 awk '{print $1, $3}' file #打印第一和第 ...

  2. awk常见用法

    awk作为linux字符搜索,结果统计的实用工具,其在linux日常运维中有着很多的巧妙运用.下面就来技术一下刚刚学到的技巧 #awk命令统计文件夹下所有文件大小 ls -l |awk 'BEGIN ...

  3. awk常见操作整理(更新)

    awk的基本结构 awk 'BEGIN{} pattern {} END {}' #pattern {} 部分是针对每行进行循环处理的,有pattern表示对匹配到的行处理,没有pattern表示对所 ...

  4. shell脚本,awk常见初始化变量的题目。

    文件 内容如下 clone=line1gb=line1gi=line1lib=line1gb=line2gi=line2lib=line2clone=line3gb=line3gi=line3lib= ...

  5. linux awk 内置函数详细介绍(实例)

    这节详细介绍awk内置函数,主要分以下3种类似:算数函数.字符串函数.其它一般函数.时间函数 一.算术函数: 以下算术函数执行与 C 语言中名称相同的子例程相同的操作: 函数名 说明 atan2( y ...

  6. awk 手册--【转载】

    1. 前言 有关本手册 : 这是一本awk学习指引,  其重点着重于 : l         awk 适于解决哪些问题 ? l         awk 常见的解题模式为何 ? 为使读者快速掌握awk解 ...

  7. awk中文手册

    1. 前言 有关本手册 : 这是一本awk学习指引, 其重点着重于 : l        awk 适于解决哪些问题 ? l        awk 常见的解题模式为何 ? 为使读者快速掌握awk解题的模 ...

  8. 见过的最好AWK手册

    原文: http://linuxfire.com.cn/~lily/awk.html 简体中文版由bones7456 (http://li2z.cn)整理. 原文:应该是 http://phi.sin ...

  9. 【译】 AWK教程指南 1前言

    前面的话: 这几天写了一个程序,在同一个目录里生成了很多文件,需要统计其中部分文件的总大小,发现经常用到的ls.du等命令都无济于事,我甚至都想到了最笨的方法,写一个脚本:mkdir一个新目录,把要统 ...

随机推荐

  1. Spring boot 与mybatis 多数据源问题

    https://www.cnblogs.com/ityouknow/p/6102399.html Spring Boot 集成Mybatis实现多数据源 https://blog.csdn.net/m ...

  2. scala学习手记23 - 函数值

    scala的一个最主要的特性就是支持函数编程.函数是函数编程中的一等公民:函数可以作为参数传递给其他函数,可以作为其他函数的返回值,甚至可以在其它函数中嵌套.这些高阶函数称为函数值. 举一个简单的例子 ...

  3. angularjs分页组件

    这是我第一次写博客,激动,首先,我也是个菜鸟,分享一下自己写的服务器端分页的代码,自己一步一步写的,其中也有参考别人的代码.技术比较渣,先这样了. // ====== 2019-1-3 ======/ ...

  4. RadioButton实现多选一

    RadioButton实现多选一 一.简介 二.RadioButton实现多选一方法 1.将多个RadioButton放在一个RadioGroup里面 <RadioGroup android:i ...

  5. poj1330lca入门题

    直接套模板,dfs的时候注意起点 #include<map> #include<set> #include<cmath> #include<queue> ...

  6. Cassandra key说明——Cassandra 整体数据可以理解成一个巨大的嵌套的Map Map<RowKey, SortedMap<ColumnKey, ColumnValue>>

    Cassandra之中一共包含下面5种Key: Primary Key Partition Key Composite Key Compound Key Clustering Key 首先,Prima ...

  7. Fiddler工作原理与代理设置

    1,什么是Fiddler Fiddler是一个http协议调试代理工具,它能够记录客户端和服务器之间的所有 HTTP请求,可以针对特定的HTTP请求,分析请求数据.设置断点.调试web应用.修改请求的 ...

  8. Myeclipse快捷键的设置以及默认的编码格式

    设置默认的编码格式

  9. 转载 IO、文件、NIO【草案四】

    本章目录: 1.IO类相关内容 2.文件和目录 3.文件高级操作  NIO详解[1]——缓冲区(Buffer)[深入理解,总结自<Java-NIO>]: [*:下边的Buffer又指代抽象 ...

  10. Flask--信号 blinker

    Flask--信号 blinker Flask框架中的信号基于blinker,可以让开发者在flask请求过程中 定制一些用户行为执行. 在请求前后,模板渲染前后,上下文前后,异常 的时候 安装: p ...