37_04_awk入门进阶
2019独角兽企业重金招聘Python工程师标准>>>
nawk,gawk GUN awk
awk命令使用方法:
awk [options] 'script' file1 file2 ...
awk [options] 'PATTERN {action}' file1 file2
awk [选项] ‘脚本’文件来源
脚本分为两部分组成 pattern(模式) 和 action(处理动作)
print 打印, printf 自定义显示格式
option -F ':' 指定冒号为分隔符(默认是空格)
一、print
print的使用格式:
print items1,items2,.....
要点:
1、各项目之间使用逗号分隔开,而输出时则以空白字符分隔:
2、输出的item可以为字符串或数值、当前记录的字段(如$1)、变量活awk的表达式:数值会转换为字符串,而后再输出;
3、print后面的item可以省略,此时相当于print $0 ,因此如果想输出空白,则需要使用 print “”;
(在脚本中$0代表脚本本身,而在awk中$0代表当前的这一整行(awk是一整行一整行读取的))
eg:
ls -l | awk -F ':' '{print }'
二、变量
2.1、awk内置变量之记录变量
FS:定义输入文本的分隔符
OFS:定义输出文本的分隔符
OFS=“#”
RS:重新定义文本的换行符(awk是一行一行读取文本处理的)
ORS:输出时所使用的行分隔符
eg : ls -l | awk 'BEGIN{OFS="#"}{print $1, "===" , $2}'
2.2 awk内置变量之数据变量:
NR: The number of input records,awk命令所处理的记录数;如果有多个文件,这个数目会把处理的多个文件中行统一计数;
NF:Number of Field,当前记录的field个数;
eg:
EG:
awk -F "," '{print NF}' abc
awk -F "," '{print $NF}' abc
2.3 用户自定义变量
在awk 中变量不要使用$符号,自定义变量使用 -v选项
eg:
awk -v test="hello world" "BEGIN{print test}"
或者
awk 'BEGIN{test="hello world"; print test}'
转载于:https://my.oschina.net/captainliu/blog/1577519
37_04_awk入门进阶相关推荐
- 【图灵】iOS技能书单——入门+进阶+精通
小编最近在研究一份不错的技能图谱(https://github.com/TeamStuQ/skill-map),遵照图谱精神,小编先做了个iOS技能书单,分享给大家. 老样子,点击书名查看完整目录和试 ...
- python绘制饼图双层_Python入门进阶:Python绘制饼图到Microsoft Excel
原标题:Python入门进阶:Python绘制饼图到Microsoft Excel 来自:Linux迷https://www.linuxmi.com/python-pie-chart-microsof ...
- linux系统export,Linux入门进阶 - 如何在Linux中使用export命令
原标题:Linux入门进阶 - 如何在Linux中使用export命令 来自: Linux迷 链接:https://www.linuxmi.com/linux-export.html Linux ex ...
- webpack入门核心知识还看不过瘾?速来围观万字入门进阶知识
一文了解webpack入门进阶知识
- 怎么用python画饼状图_Python入门进阶:Python绘制饼图到Microsoft Excel
原标题:Python入门进阶:Python绘制饼图到Microsoft Excel 来自:Linux迷https://www.linuxmi.com/python-pie-chart-microsof ...
- python3中文教程_Python视频教程:Python3入门+进阶让你快速掌握Python3
全网最热Python3入门+进阶 更快上手实际开发 无论是大数据.人工智能还是机器学习,Python都是最热门的首选语言 ,这次课程,就将带你从基础入门Python3,掌握Python3.x 版本语法 ...
- Flutter入门进阶之旅(二)Hello Flutter
开题 好像几乎我们学习或者掌握任何一门编程语言都是Hello word开始的,本篇博文做为Flutter入门进阶的第一篇分享,我们也从最简单的Hello world开始,至于Flutter开发环境的配 ...
- 【专知荟萃18】目标跟踪Object Tracking知识资料全集(入门/进阶/论文/综述/视频/专家,附查看)
原创: 专知内容组 专知 2017-11-18 点击上方"专知"关注获取专业AI知识! [导读]主题荟萃知识是专知的核心功能之一,为用户提供AI领域系统性的知识学习服务.主题荟萃为 ...
- 吹爆系列:教科书级别的Android音视频入门进阶学习手册,学完我成功“挤进”了抖音音视频开发岗
Android开发工作两年,真的是感觉Android应用层开发没什么前景了,于是打算在网络安全,智能硬件,音视频这几个方向发展,考虑了一段时间,最终决定选择音视频.理由就不说了,既然选择了就要好好深耕 ...
最新文章
- 开题:在移动开发中使用JavaScript进行混合编程提高代码复用率
- 密码太多记不住?SSO帮你轻松访问VDI及外部资源
- Java、Android基础之—反射
- Windows核心编程 第十八章 堆栈
- 大四Java复习笔记之Java基础
- 【pmcaff】2014互联网公司薪资排行榜
- STM32F4 HAL库开发 -- 软件包
- 使用openSSL构造一个支持https的nodejs服务器
- pandas DataFrame 数据处理常用操作
- Jeecg 初级入门
- SQL Server AlwaysOn集群在辅助副本创建只读账号
- android 错误解决,Android常用错误解决汇总
- 一个神奇的数字货币,终结了南非小哥每天步行20公里的烦恼
- Python 动图、动画制作 —— moviepy、matplotlib.animation
- 神奇的数学:牛津教授给青少年的讲座
- DanmuManager 一个简单的弹幕工具
- 百度地图神奇错误--------不显示
- mvn执行编译时使用lib下的jar包
- NOI 2021 游记
- 私服游戏推荐服务器三丰云服务器
热门文章
- git: No refs in common and none specified; doing no
- 深入理解JavaScript系列(23):JavaScript与DOM(上)——也适用于新手
- 报表控件NCreport教程:报表高级设计
- 【发现】Pandora's Box Puzzle Game of the Year Edition 原版镜像
- ---Pcie基本概念普及(扫盲篇--巨适合新手)
- linux中的shell有printf吗,Linux Shell系列教程之(八)Shell printf命令详解
- java内部类gc_Java内部类持有外部类的引用详细分析与解决方案
- 计算机基础知识_2020年河北省高职单招计算机基础知识和实践技能培训
- retrofit2 发送json数据_SQLmap JSON 格式的数据注入
- 详解vue 路由跳转四种方式 (带参数)