用awk编写Shell脚本
2015-11-10 16:58
573 查看
一、概述
1. 产品概述:
awk是一种编程语言,用于在linux/unix下对文本和数据进行扫描与处理。数据可以来自标准输入、文件、管道。
awk分别代表其作者姓氏的第一个字母。因为它的作者是三个人,分别是Alfred Aho、Peter Weinberger、Brian Kernighan。
实际上awk有很多种版本,如:awk、nawk、mawk、gawk、MKS awk、tawk... 这其中有开源产品也有商业产品。
目前在Linux中常用的awk编译器版本有mawk,gawk,其中以RedHat为代表使用的是gawk,以Ubuntu为代表使用的是mawk。
gawk是GNU Project 的awk解释器的开源代码实现。
本文将以gawk作为讲解工具。
2. 原理:
1). awk逐行扫描文件,从第一行到最后一行,寻找匹配特定模式的行,并在这些行上进行你想要的操作。
2). awk基本结构包括模式匹配(用于找到要处理的行)和处理过程(即处理动作)。
pattern {action}
# 提示:awk读取文件内容的每一行时,将对比改行是否与给定的模式相匹配,如果匹配则执行处理过程,否则对该行不做任何处理。
如果没有指定处理脚本,则把匹配的行显示到标准输出,即默认处理动作是print打印行;
如果没有指定模式匹配,则默认匹配所有数据。
3). awk有两个特殊的模式:BEGIN和END,他们被放置在没有读取任何数据之前以及在所有数据读取完成以后执行。
3. awk流程图:
提示:awk将文件中的每一行当作一条记录,并将记录分割为若干字段,默认以空格或制表符为分隔符。
如This is a test file. 将分割为5个字段,awk可以对这5个字段进行分别处理。
FROM: http://www.bianceng.cn/OS/Linux/201304/35943.htm
1. 产品概述:
awk是一种编程语言,用于在linux/unix下对文本和数据进行扫描与处理。数据可以来自标准输入、文件、管道。
awk分别代表其作者姓氏的第一个字母。因为它的作者是三个人,分别是Alfred Aho、Peter Weinberger、Brian Kernighan。
实际上awk有很多种版本,如:awk、nawk、mawk、gawk、MKS awk、tawk... 这其中有开源产品也有商业产品。
目前在Linux中常用的awk编译器版本有mawk,gawk,其中以RedHat为代表使用的是gawk,以Ubuntu为代表使用的是mawk。
gawk是GNU Project 的awk解释器的开源代码实现。
本文将以gawk作为讲解工具。
2. 原理:
1). awk逐行扫描文件,从第一行到最后一行,寻找匹配特定模式的行,并在这些行上进行你想要的操作。
2). awk基本结构包括模式匹配(用于找到要处理的行)和处理过程(即处理动作)。
pattern {action}
# 提示:awk读取文件内容的每一行时,将对比改行是否与给定的模式相匹配,如果匹配则执行处理过程,否则对该行不做任何处理。
如果没有指定处理脚本,则把匹配的行显示到标准输出,即默认处理动作是print打印行;
如果没有指定模式匹配,则默认匹配所有数据。
3). awk有两个特殊的模式:BEGIN和END,他们被放置在没有读取任何数据之前以及在所有数据读取完成以后执行。
3. awk流程图:
提示:awk将文件中的每一行当作一条记录,并将记录分割为若干字段,默认以空格或制表符为分隔符。
如This is a test file. 将分割为5个字段,awk可以对这5个字段进行分别处理。
FROM: http://www.bianceng.cn/OS/Linux/201304/35943.htm
相关文章推荐
- shell下添加计划性任务
- Awk 命令学习总结、AWk命令系列学习(linux shell)
- shell编程之【告警系统】
- shell里如何完美判断环境变量是否存在?
- linux shell 启动脚本
- shell-bash学习01基础、打印、环境变量
- Linux Shell基础
- 关于makefile和shell脚本的异同:make和bourne again shell--bash
- BASH系列(4)―― BASH变量操作
- bash shell sed技巧
- Shell脚本调试小技巧
- Bash中的$*和$@的区别
- shell awk 入门
- ios shell 命令行
- HBase总结(十三)HBase Shell 常用命令及例子
- SSH Secure Shell Client
- shell脚本编写的flipbird
- Pentest - Spwan a shell from meterpreter
- linux vim .bashrc 配置以及一些常用的linux 命令解析(下)
- Linux Shell编程基本知识