9.6/9.7 awk

awk

awk是一种很棒的语言,它适合文本处理和报表生成,其语法较为常见,借鉴了某些语言的一些精华,如C语言等。awk在linux系统日常处理工作中,发挥很重要的作用,掌握了awk将会使你的工作变的高大上。

awk语法比sed多,有变量、数组和语句控制,所以功能更加强大。不过初学awk建议先学一些常用的用途,后期再深入。最一开始不深入语法的话,awk比sed主要多了分段功能。

awk命令行格式为:awk [选项] ‘{command}’ 输入文本。-F选项指定分段符,如果不知定的话,默认为空格。在awk中,花括号用于将几块代码组合到一起,这一点类似C语言。以awk '{print $0}' /etc/passwd为例,这里指定/etc/passwd为输入文件。执行awk时,它依次对/etc/passwd中的每一行执行 print命令。所有输出都发送到stdout,所得到的结果与执行cat /etc/passwd 完全相同。awk和grep、sed一样,是流处理模式,逐行处理文本,$0代表当前处理的行。

正则表达式

下面结合正则表达式,列出一些常用的awk命令。学习初期掌握这些基本够用,要多练习相关功能。先创建一个test.txt试验:cp /etc/passwd test.txt。

head -n2 test.txt|awk -F ':' '{print $1}' #以冒号为分隔符,打印第一段

head -n2 test.txt|awk -F ':' '{print $0}' #以冒号为分隔符,打印整行

awk -F ':' '{print $1"#"$2"#"$3"

linux awk 正则,awk及正则表达式相关推荐

  1. Linux三剑客之awk详解

    第一篇 awk简介与表达式实例 一种名字怪异的语言 模式扫描和处理,处理数据和生成报告. awk不仅仅是linux系统中的一个命令,而且是一种编程语言:它可以用来处理数据和生成报告(excel):处理 ...

  2. linux sed 正则转义,Linux运维云升笔记 (一)正则表达式以及文档编辑器sed

    正则表达式概述 使用单个字符来描述.匹配一系列符合某个语句规则的字符串,由普通字符与特殊字符组成,正则表达式广泛使用在脚本编程.文本编辑器中. 正则表达式简写为regex.regexp.RE. 再大多 ...

  3. Linux三剑客之awk最佳实践

    笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 知识点: 记录与字段 模式匹配:模式与动作 基本的awk执行过程 awk常用内置变量(预定义变量) awk数组 a ...

  4. linux三剑客之awk命令详解

    linux三剑客之awk命令详解 awk 是一个处理文本的编程语言工具,能用简短的程序处理标准输入或文件.数据排序.计算以及生成报表等等.awk工具主要用于格式化输出,可以用类似于处理表格的方式处理文 ...

  5. linux三个冒号加端口,不看绝对后悔的Linux三剑客之awk实战精讲

    一.Linux三剑客之awk命令精讲 第1章 awk基础入门 1.1 awk简介awk不仅仅时linux系统中的一个命令,而且是一种编程语言,可以用来处理数据和生成报告(excel).处理的数据可以是 ...

  6. linux shell sed awk 命令(2)-awk

    linux shell sed awk 命令(2)-awk awk语法格式: awk [选项] -f program-file [ -- ] file ... 选项: -F fs, --field-s ...

  7. Linux下的awk用法详解

    Linux下的awk用法详解 一.awk介绍 二.awk的语法 三.awk常见用法 四.awk其他用法 五.awk语言特性 一.awk介绍 1.AWK 是一种处理文本文件的语言,是一个强大的文本分析工 ...

  8. linux awk入门,awk入门应用

    awk概述 awk是一种编程语言,用于在linux/unix下对文本和数据进行处理.数据可以来自标准输入.一个或多个文件,或其它命令的输出.它支持用户自定义函数和动态正则表达式等先进功能,是linux ...

  9. linux awk命令详解(一) awk语法 awk运算 awk数组

    ===============================原文地址http://www.cnblogs.com/emanlee/p/3327576.html 好文章!!! Table of Con ...

最新文章

  1. python_day9 进程池
  2. 学霸孩子必备的三种思维,编程思维的速成方法
  3. 劣势者效应下,B站等短视频平台UP主“卖惨”吸睛又吸金?
  4. windows找不到文件javaw_windows电脑上,怎么快速找文件?
  5. mybatis 动态字段与表中不一样_mybatis创建一个或多个新用户 insert 字段和表名不确定时动态添加问题...
  6. [WCF安全系列]绑定、安全模式与客户端凭证类型:NetNamedPipeBinding、NetTcpBinding与NetMsmqBinding...
  7. 使用CLion的时候,对于cmake的使用
  8. UVA - 455 Periodic Strings【字符串】
  9. java实现保存一张图片_Java图片剪裁并保存的代码实现
  10. PYTHON网络爬虫与信息提取[网络爬虫协议](单元二)
  11. 存储盟主将要退位云计算会是最后盟主?
  12. java nio oio_(三:NIO系列) Java NIO Channel
  13. 被众多车企“抛弃”、增长放缓,Mobileye值不值500亿美元?
  14. 【爬虫学习笔记day44】5.2. (scrapy案例二)阳光热线问政平台爬虫
  15. Excel各种条件求和的公式汇总
  16. 计算机专业面试英语对话,计算机网络专业面试对话技巧
  17. 从零开始的iOS开发:10 | 如何构建一个APP
  18. 查询学生的学号、课程号和成绩,并按成绩升序排序
  19. 自学Linux 2—Linux 的系统架构之 Linux 内核的主要模块和 Linux 的文件结构
  20. Word调整页眉与标题/正文的距离

热门文章

  1. KGAT 2019(KDD)Knowledge Graph Attention Network for Recommendation
  2. install vnc server on debian
  3. ChatGPT推出后,立场检测技术将如何发展?
  4. iOS15.2 首个测试版推送,有严重bug
  5. 【AI达人创造营三期】Fastdeploy与英特尔NUC推动智慧城市巡检应用落地
  6. 华为畅享9,进入小程序,经常加载不出详情页 editorCtx 富文本
  7. [Alibaba十周年庆]马云讲话要点
  8. cache 在X86和ARM的性能比较 - 矩阵累加和分块矩阵乘法
  9. 小赢理财招聘 测试开发、专项
  10. 常见聚类算法及使用--层次聚类(Agglomerative clustering)