awk入门-凯发app官方网站

凯发app官方网站-凯发k8官网下载客户端中心 | | 凯发app官方网站-凯发k8官网下载客户端中心
  • 博客访问: 893544
  • 博文数量: 113
  • 博客积分: 3160
  • 博客等级: 少校
  • 技术积分: 1801
  • 用 户 组: 普通用户
  • 注册时间: 2011-08-19 10:09
文章分类

全部博文(113)

相关博文
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·
  • ·

分类: python/ruby

2012-09-18 17:42:16

awk常常用于处理数据和生成报告。它以逐行扫描的方式,查找匹配某个特定模式
的文本,同时可以对匹配的行进行非常精细的操作。


** awk的格式:

: awk 'pattern {action}' filename


*** pattern

其中pattern指的就是匹配的模式,类似于grep,不过和sed的匹配更相似。例如
'/ ^mail /'就是匹配以mail开始的行。

*** action

action类似于sed在匹配模式后面跟上的命令,它的所用就是对匹配到的文本进行
某种操作。例如'/ ^mail / {print $1}',它将匹配以mail开头的行,并将其第
一个字段打印出来。

** awk的工作原理

awk以一行作为输入,并将该行赋给内部变量$0;接着,awk将根据分割符将行分
割成多个字段,每一个字段按照顺序存储在$1, $2... 最多可以达到100个。这个
很类似shell脚本的参数,$0代表本身,$1往后是位置参数,代表每一个参数。接
着awk可以对每一个字段进行相应的操作,这是grep和sed很难实现的。



  1. ~$ awk '/calls/ {print $2, $5}' test
  2. system provided
  3. library within
  4. # 首先匹配包含calls的行,接着显示第2和第5个字段。


** awk环境变量


  1. |----- ------------|
  2. | nf | 字段数 |
  3. |----- ------------|
  4. | nr | 记录数 |
  5. |----- ------------|
  6. | fs | 分割符 |
  7. |----- ------------|
  8. | ofs | 输出分割符 |
  9. |----- ------------|

阅读(2133) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~
")); function link(t){ var href= $(t).attr('href'); href ="?url=" encodeuricomponent(location.href); $(t).attr('href',href); //setcookie("returnouturl", location.href, 60, "/"); }
网站地图