Fork me on GitHub

awk初级教程

参考:sed & awk 概述

sed & awk指令组成

与sed区别

尽管awk指令与sed指令的结构相同,都由模式和过程两部分组成,但过程本身有很大不同。

awk看上去不像编辑器而更像一种程序设计语言,更详细地说应该是查询语言。语句和函数取代了使用一个或两个字符组成的命令序列。

例如,使用print语句打印表达式的值或打印当前输入行的内容。

记录 和 字段

在通常情况下,awk将每个输入行解释为一条记录(record),将那一行上的每个单词(由空格或制表符分隔)解释为一个字段(field)。

一个或多个连续的空格或制表符被看做一个定界符。使用-F可以更改定界符

awk允许在模式 或 过程中引用这些字段。$0代表整个输入行。$1、$2.…表示输入行上的各个字段。

使用awk

调用sed有两种方法:在命令行上指定编辑指令,或者将它们放到一个文件中并提供这个文件的名字。

测试文本:list

John Daggett, 341 King Road, Plymouth MA
Alice Ford, 22 East Broadway, Richmond VA
Orville Thomas, 11345 Oak Bridge Road, Tulsa OK
Terry Kalkas, 402 Lans Road, Beaver Falls PA
Eric Adams, 20 Post Road, Sudbury MA
Hubert Sims, 328A Brook Road, Roanoke VA
Amy Wilde, 334 Bayshore Pkwy, Mountain View CA
Sal Carpenter, 73 6th Street, Boston MA
View Code

命令行上指定命令

使用方式同sed

指令总是包含在单引号''中,指令中总是含有{} \ $

提供脚本文件

-f 指定命令行上的脚本文件名字

使用方式同sed

 

posted @ 2018-12-06 19:12  克拉默与矩阵  阅读(188)  评论(0编辑  收藏  举报