awk常见基本使用
-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常见基本使用的更多相关文章
- linux awk 常见字符串处理
awk指定输出列: awk '{print $0} file' #打印所有列awk '{print $1}' file #打印第一列 awk '{print $1, $3}' file #打印第一和第 ...
- awk常见用法
awk作为linux字符搜索,结果统计的实用工具,其在linux日常运维中有着很多的巧妙运用.下面就来技术一下刚刚学到的技巧 #awk命令统计文件夹下所有文件大小 ls -l |awk 'BEGIN ...
- awk常见操作整理(更新)
awk的基本结构 awk 'BEGIN{} pattern {} END {}' #pattern {} 部分是针对每行进行循环处理的,有pattern表示对匹配到的行处理,没有pattern表示对所 ...
- shell脚本,awk常见初始化变量的题目。
文件 内容如下 clone=line1gb=line1gi=line1lib=line1gb=line2gi=line2lib=line2clone=line3gb=line3gi=line3lib= ...
- linux awk 内置函数详细介绍(实例)
这节详细介绍awk内置函数,主要分以下3种类似:算数函数.字符串函数.其它一般函数.时间函数 一.算术函数: 以下算术函数执行与 C 语言中名称相同的子例程相同的操作: 函数名 说明 atan2( y ...
- awk 手册--【转载】
1. 前言 有关本手册 : 这是一本awk学习指引, 其重点着重于 : l awk 适于解决哪些问题 ? l awk 常见的解题模式为何 ? 为使读者快速掌握awk解 ...
- awk中文手册
1. 前言 有关本手册 : 这是一本awk学习指引, 其重点着重于 : l awk 适于解决哪些问题 ? l awk 常见的解题模式为何 ? 为使读者快速掌握awk解题的模 ...
- 见过的最好AWK手册
原文: http://linuxfire.com.cn/~lily/awk.html 简体中文版由bones7456 (http://li2z.cn)整理. 原文:应该是 http://phi.sin ...
- 【译】 AWK教程指南 1前言
前面的话: 这几天写了一个程序,在同一个目录里生成了很多文件,需要统计其中部分文件的总大小,发现经常用到的ls.du等命令都无济于事,我甚至都想到了最笨的方法,写一个脚本:mkdir一个新目录,把要统 ...
随机推荐
- RDP 协议组件 X.224 在协议流中发现一个错误并且中断了客户端连接
如果你的服务器有如下错误: “RDP 协议组件 X.224 在协议流中发现一个错误并且中断了客户端连接.” 可能的有2种: 1:你试试能否能继续远程登陆,有可能你的远程登陆组件出现问题. 2:有人攻击 ...
- Delphi_时间间隔
1. var dtOnlineDateTime, dt: TDateTime; begin dt := StrToDateTime('2017/6/28 16:41:30'); dtOnlineDat ...
- Django进阶Model篇008 - 使用原生sql
注意:使用原生sql的方式主要目的是解决一些很复杂的sql不能用ORM的方式写出的问题. 一.extra:结果集修改器-一种提供额外查询参数的机制 二.执行原始sql并返回模型实例 三.直接执行自定义 ...
- python之单元测试框架—unittest(补充)
一. unittest最核心的四个概念 unittest中最核心的四个概念是:test case,test suite,test runner,test fixture TestCase:一个test ...
- ICE 中后台开发
1.https://alibaba.github.io/ice/#/block 2.https://www.zhihu.com/question/266529857/answer/309604282 ...
- Win7系统搭建WiFi热点详细攻略
(转自:http://blog.csdn.net/gisredevelopment/article/details/16113889) 一.如果你之前没有在笔记本上搭建过WiFi,那么恭喜你,你的笔记 ...
- LeetCode OJ:Remove Nth Node From End of List(倒序移除List中的元素)
Given a linked list, remove the nth node from the end of list and return its head. For example, Give ...
- 【python】imp模块的使用
是import在程序中的使用 [一]函数load_source imp.load_source(moduleName, sourceFile) 使用: abc = imp.load_source('d ...
- win7 秘钥
链接 安装好Windows7后右击计算机--属性--更改产品密匙 输入以下密匙; RHTBY-VWY6D-QJRJ9-JGQ3X-Q2289 HT6VR-XMPDJ-2VBFV-R9PFY-3VP7R ...
- jquery自定义插件实现分页效果
这节介绍如何自定义jquery插件,实现分页效果,话不多说,先看看实现的效果: 分页插件 实现的代码如下: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTM ...