awk命令总结
强大的文本处理工具,awk读取文件内容的每一行时,将对比该行是否与给定的模式相匹配,匹配则执行处理过程,否则对该行不处理。
| 序号 | awk功能 | 例子 |
|---|---|---|
| 1 | 指定分隔符显示某几列 | |
| 2 | 通过正则表达式取出想要的内容 | |
| 3 | 显示某个范围内的内容 | |
| 4 | 通过awk 进行统计计算 | |
| 5 | awk数组计算与去重 |
主要参数
- -F 指定分隔符
- NR 行数
- NF 表示列的个数
- $NF 表示输出最后一列,即输出最后一个字段的内容
实例
.显示文件第五行
[root@t1 ~] #awk 'NR==5' /etc/passwd
lp:x:::lp:/var/spool/lpd:/sbin/nologin .显示文件2至6行
[root@t1 ~] #awk 'NR==2,NR==6' /etc/passwd
bin:x:::bin:/bin:/sbin/nologin
daemon:x:::daemon:/sbin:/sbin/nologin
adm:x:::adm:/var/adm:/sbin/nologin
lp:x:::lp:/var/spool/lpd:/sbin/nologin
sync:x:::sync:/sbin:/bin/sync .给每一行加上行号
[root@t1 ~] #awk '{print NR $0}' /etc/passwd
1root:x:::root:/root:/bin/bash
2bin:x:::bin:/bin:/sbin/nologin
3daemon:x:::daemon:/sbin:/sbin/nologin
4adm:x:::adm:/var/adm:/sbin/nologin
5lp:x:::lp:/var/spool/lpd:/sbin/nologin
6sync:x:::sync:/sbin:/bin/sync .显示第一列,第三列,最后一列
[root@t1 ~] # awk -F ":" '{print $1,$3,$NF}' /etc/passwd | head
root /bin/bash
bin /sbin/nologin
daemon /sbin/nologin
adm /sbin/nologin
lp /sbin/nologin
sync /bin/sync
shutdown /sbin/shutdown
halt /sbin/halt
mail /sbin/nologin
uucp /sbin/nologin .取ip地址
[root@t1 ~] #ifconfig eth0
eth0 Link encap:Ethernet HWaddr :0C::::9D
inet addr:10.10.8.116 Bcast:10.10.8.255 Mask:255.255.255.0
inet6 addr: fe80::20c:29ff:fe05:329d/ Scope:Link
UP BROADCAST RUNNING MULTICAST MTU: Metric:
RX packets: errors: dropped: overruns: frame:
TX packets: errors: dropped: overruns: carrier:
collisions: txqueuelen:
RX bytes: (6.0 GiB) TX bytes: (26.3 MiB) [root@t1 ~] #ifconfig eth0 | awk -F "(addr:)|( Bcast:)" 'NR==2 {print $2}'
10.10.8.116 此外还可以 [root@t1 ~] #ifconfig eth0 | awk -F "[ :]+" 'NR==2{print $4}'
10.10.8.116
结合起来就是-F "[ :]+" 以单个或者连续的空格或冒号或者组合作为分隔符
awk命令总结的更多相关文章
- linux awk命令详解
linux awk命令详解 简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分 ...
- awk命令详解
搜索 纠正错误 添加实例 awk 文本和数据进行处理的编程语言 补充说明 awk 是一种编程语言,用于在linux/unix下对文本和数据进行处理.数据可以来自标准输入(stdin).一个或多个文件 ...
- Linux安全基础:awk命令的使用
awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各 ...
- AWK命令学习
使用方法 awk 'pattern {action}' {filenames} 尽管操作可能会很复杂,但语法总是这样,其中 pattern 表示 AWK 在数据中查找的内容,而 action 是在找到 ...
- awk 命令
awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各 ...
- AWK命令的用法
1.awk命令简介: awk是一种可以处理数据.产生格式化报表的语言,功能十分强大. awk的工作方式是读取数据,将每一行数据视为一条记录(record)每笔记录以字段分隔符分成若干字段,然后输出各个 ...
- [Linux] linux awk命令详解
reference : http://www.cnblogs.com/ggjucheng/archive/2013/01/13/2858470.html 简介 awk是一个强大的文本分析工具,相对于g ...
- awk命令简单介绍
简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再 ...
- Linux的awk命令
简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再 ...
- awk命令--update20150120
简介 awk是一个强大的文本分析工具,把文件逐行读入,以空格为默认分隔符分割成field,切开的部分再进行各种分析处理. 模式和动作: 任何awk语句都是由模式和动作组成,模式部分决定动作语句何时触发 ...
随机推荐
- line-height的高度机理
1.元素高度从何而来?是由里面的文字撑开的? <!DOCTYPE html> <html lang="en"> <head> <meta ...
- Office 2016 自定义安装
Office2016已经不提供自定义安装功能,而采用C2R安装方式.使用镜像安装时,默认全部安装.想要自定义安装就需要用到微软提供的Office2016部署工具. 步骤 下载并运行微软提供的Offic ...
- Summary on deep learning framework --- Theano && Lasagne
Summary on deep learning framework --- Theano && Lasagne 2017-03-23 1. theano.function outp ...
- Asp.net 按钮幕布遮盖效果实现方式
Asp.net button按钮点击后想要实现幕布效果来等待服务器端执行完成,这种需求虽说看起来很简单,但真实做起来并不是那么简单,涉及了很多细节点,而对于深入理解asp.net button生命周期 ...
- Java核心知识盘点(一)- 数据存储
MySQL 索引使用的注意事项 1.索引的目的:在于提高查询效率,插入和更新的操作,数据库的操作是慢的,但是查询操作会非常快,索引可以对表中一个或多个字段进行加索引动作. 2.索引的类型: 1.唯一索 ...
- leecode第二百三十六题(二叉树的最近公共祖先)
/** * Definition for a binary tree node. * struct TreeNode { * int val; * TreeNode *left; * TreeNode ...
- Kafka集群安装部署、Kafka生产者、Kafka消费者
Storm上游数据源之Kakfa 目标: 理解Storm消费的数据来源.理解JMS规范.理解Kafka核心组件.掌握Kakfa生产者API.掌握Kafka消费者API.对流式计算的生态环境有深入的了解 ...
- [数据结构] P2.3 Trie树
1.Trie树的概念 Trie树也叫做`字典树`或者`单词查找树`.用于字符串以及字符串元信息的快速查询. 例如:
- 基于apache的虚拟主机
apche支持3种类型虚拟主机: 基于IP的虚拟主机 基于端口的虚拟主机 基于主机名的虚拟主机 配置两个站点虚拟主机: /data/web1 /data/web2 一.基于IP虚拟主机 添加一个IP: ...
- pta
一:实验代码 include <stdio.h> char theValue[10] = { 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j ...