awk简单用法-(1)
一、awk基本操作
awk指定多个分割符,分隔符中有:和空格,还有:和空格的组合,这个时候需要指定多个分隔符 -F'[ :]+',[ :]表示分隔符为:和空格,一个或者多个+号表示空格和:的组合也为一个分隔符
打印倒数第一列,以空格和:and空格 “:”的组合为分隔符
[root@VM_0_84_centos ~]# cat aaa |awk -F'[: ]+' '{print $NF}'
number #打印倒数第二列,以空格和:and空格 “:”的组合为分隔符
[root@VM_0_84_centos ~]# cat aaa |awk -F'[: ]+' '{print $(NF-1)}'
age
假如分隔符为空格,打印第一列 $1为第一列的数据 $0打印整个文件的内容
cat aaa |awk '{print $1}'
二、awk的NR、NF内置变量的应用
NF变量的使用:打印文件的字段数,NF指的是字段的数量,有时候由于文本数据量太大,而且字段切分不规则,会导致使用 '{print $n}'取值会出现错误,建议使用NF来取响应的字段
[root@VM_0_84_centos ~]# cat aaa
name: age number
ghd
gym
[root@VM_0_84_centos ~]# cat aaa |awk '{print NF}' [root@VM_0_84_centos ~]# cat aaa |awk '{print $NF}'
number [root@VM_0_84_centos ~]# cat aaa |awk '{print $(NF-2)}'
name:
ghd
gym
[root@VM_0_84_centos ~]# cat aaa |awk '{print NF}'
NR变量:打印文件的行的内容
#打印文件的第二行内容
[root@VM_0_84_centos ~]# cat test.txt |awk 'NR==2{print $0}'
ghd #打印文件的第二行第一个列(字段)的内容
[root@VM_0_84_centos ~]# cat test.txt |awk 'NR==2{print $1}'
ghd #打印大于第一行小于第三行的所属行的所有字段,$n为字段数(列)
cat test.txt |awk 'NR>1&&NR<3{print $0}'
ghd #不打印第二行的其它行的所有字段
[root@VM_0_84_centos ~]# cat test.txt |awk 'NR!=2{print $0}'
name: age number
gym
练习:
打印文件所有内容,并显示文件内容所属行和字段
cat test.txt |awk -F'[ :]+' '{print NR,NF,$0}'
name: age number
ghd
gym
awk简单用法-(1)的更多相关文章
- awk简单用法
awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各 ...
- grep结合awk简单用法
一.grep简介: grep (缩写来自Globally search a Regular Expression and Print)是一种强大的文本搜索工具,它能使用正则表达式搜索文本,并把匹配的行 ...
- Shellz中awk的简单用法
其实shell脚本的功能常常被低估.在实际应用中awk sed 等用法可以为shell提供更为强大的功能.下面我们将一下awk调用的简单方法进行了总结.方便同学们学习: awk的简单用法: 第一种调用 ...
- Linux sed 和 awk的用法
sed用法: 原文链接:http://www.cnblogs.com/dong008259/archive/2011/12/07/2279897.html sed是一个很好的文件处理工具,本身是一个管 ...
- 文本处理三剑客之AWK的用法
1.awk命令简介: awk是一种可以处理数据.产生格式化报表的语言,功能十分强大. awk的工作方式是读取数据,将每一行数据视为一条记录(record)每笔记录以字段分隔符分成若干字段,然后输出各个 ...
- centos shell脚本编程1 正则 shell脚本结构 read命令 date命令的用法 shell中的逻辑判断 if 判断文件、目录属性 shell数组简单用法 $( ) 和${ } 和$(( )) 与 sh -n sh -x sh -v 第三十五节课
centos shell脚本编程1 正则 shell脚本结构 read命令 date命令的用法 shell中的逻辑判断 if 判断文件.目录属性 shell数组简单用法 $( ) 和$ ...
- gawk(awk)的用法案例
gawk(awk)的用法案例 本文首先简单介绍一个gawk和awk的区别,然后是一点基本使用流程,最后是自己做的一个分析数据文件的脚本代码,供大家参考.另外想了解基本流程的入门知识的可以下载附件pdf ...
- <三剑客> 老大:awk命令用法
awk是一种编程语言,用于在linux/unix下对文本和数据进行处理.数据可以来自标准输入(stdin).一 个或多个文件,或其它命令的输出.它支持用户自定义函数和动态正则表达式等先进功能,是lin ...
- awk命令_Linux awk 命令用法详解
本文索引 awk命令格式和选项 awk模式和操作 模式 操作 awk脚本基本结构 awk的工作原理 awk内置变量(预定义变量) 将外部变量值传递给awk awk运算与判断 算术运算符 赋值运算符 逻 ...
随机推荐
- inetd的工作流程
- 缓存dom查询
为了提高性能缓存dom查询; 页面效果:
- NEX 事件
我正在上班突然看到这个事情差点没笑抽. 转自纯洁的微笑:原文在此:http://www.cnblogs.com/ityouknow/p/9247842.html#4010697 大家知道 VIVO 上 ...
- HashMap 底层分析
以下基于 JDK1.7 分析 如图所示,HashMap底层是基于数组和链表实现的,其中有两个重要的参数: ---容量 ---负载因子 容量的默认大小是16,负载因子是0.75,当HashMap的siz ...
- python 的基础 学习 第六天 基础数据类型的操作方法 字典
1,字典 字典是python中唯一的映射类型,采用键值对(key-value)的形式存储数据.python对key进行哈希函数运算,根据计算的结果决定value的存储地址,所以字典是无序存储的,且ke ...
- 「LibreOJ Round #6」花火
转化思维的好题! 链接:here 大致题意: 有$ n$个数字,你每次可以交换相邻两个,还有一次交换任意两个元素的机会,求最少的交换次数使得这些数字升序排序(原数列两两不同) $ solotion:$ ...
- HDFS笔记(二)
fsimage : NameNode启动时,对文件系统的快照 eidt logs : NameNode启动后,对文件系统的改动序列 namenode在全局里就一个进程,所以存在单点问题 DataNod ...
- 在IDEA中新建Spring Boot项目
新建项目 选择项目构建方式 选择项目依赖 新建项目成功后(Maven构建方式)
- Javascript - ExtJs - 整合百度文章编辑器
ExtJs - 整合百度文章编辑器(ExtJs UEditor) 第一步:去官网下载最新版本的UEditor,UEditor下载. 第二步:在编辑器根目录创建一个Extjs-Editor.js,录入以 ...
- MySql cmd下的学习笔记 —— 有关建立表的操作(有关于数据类型)
(01)建表的过程实际上是 声明字段 的过程 一. 列类型(字段): 存储同样的数据时,不同的列类型,所占据的空间和效率是不一样的,这就是建表时要考虑的意义. 二.MySQL三大列类型 数值型 ...