awk简单教程
2008-05-25 20:04
267 查看
语法结构为 ' 表达式{动作}'
默认为每行一个循环 一直循环到结束
$0 为一字符串,其内容为目前AWK所读入的记录
$1 代表$0上第一个域的数据
$2 代表$0上第二个域的数据
AWK也可以接受一般的关系判断如 代码::
>,<,>=,<=,==,!=
另外它还接受~(符合)及!~(不符合)两个关系运算符,比如 代码::
"Xplore" ~/or/
NF(Number of Fields)为一整数,表示域的数目,比如test1.dat上域数目就是4个
NR(Number of Records)为一整数,其值表示AWK意读入的记录条数
FILENAME 正在处理的数据文件名
FS=":" 分割符号
$awk '{if (NF>max) max=NF} END{print max} ' test1.dat
$ awk 'NF>0' test1.dat
$ awk 'NR %2 ==0' test1.dat
$ awk '{print $2}' test1.dat
$ ls -l |awk '{x+=$5}; END{print x}'
$ awk 'BEGIN{FS=":";} {print $1 |"sort" }' /etc/passwd
$ awk 'END{print "total",NR,"lines"}' test1.dat
$ awk '/one/{print $0}' test1.dat
$ awk -F":" '{ print $1 " " $3 }' /etc/passwd
$ awk -F":" '{ print "username: " $1 "\t\tuid:" $3" }' /etc/passwd
$ awk -f myscript.awk myfile.in
/[0-9]+\.[0-9]*/ { print }
$1 == "fred" { print $3 }
$5 ~ /root/ { print $3 }
! /matchme/ { print $1 $3 $4 }
( $1 == "foo" ) && ( $2 == "bar" ) { print }
/^$/ 空白行
FS="\t+"
FS="[[:space:]+]"
FS="foo[0-9][0-9][0-9]"
默认为每行一个循环 一直循环到结束
$0 为一字符串,其内容为目前AWK所读入的记录
$1 代表$0上第一个域的数据
$2 代表$0上第二个域的数据
AWK也可以接受一般的关系判断如 代码::
>,<,>=,<=,==,!=
另外它还接受~(符合)及!~(不符合)两个关系运算符,比如 代码::
"Xplore" ~/or/
NF(Number of Fields)为一整数,表示域的数目,比如test1.dat上域数目就是4个
NR(Number of Records)为一整数,其值表示AWK意读入的记录条数
FILENAME 正在处理的数据文件名
FS=":" 分割符号
$awk '{if (NF>max) max=NF} END{print max} ' test1.dat
$ awk 'NF>0' test1.dat
$ awk 'NR %2 ==0' test1.dat
$ awk '{print $2}' test1.dat
$ ls -l |awk '{x+=$5}; END{print x}'
$ awk 'BEGIN{FS=":";} {print $1 |"sort" }' /etc/passwd
$ awk 'END{print "total",NR,"lines"}' test1.dat
$ awk '/one/{print $0}' test1.dat
$ awk -F":" '{ print $1 " " $3 }' /etc/passwd
$ awk -F":" '{ print "username: " $1 "\t\tuid:" $3" }' /etc/passwd
$ awk -f myscript.awk myfile.in
/[0-9]+\.[0-9]*/ { print }
$1 == "fred" { print $3 }
$5 ~ /root/ { print $3 }
! /matchme/ { print $1 $3 $4 }
( $1 == "foo" ) && ( $2 == "bar" ) { print }
/^$/ 空白行
FS="\t+"
FS="[[:space:]+]"
FS="foo[0-9][0-9][0-9]"
相关文章推荐
- AWK简单教程
- awk 简单教程
- awk 简单教程
- awk 简单教程
- awk简单教程
- AWK简单教程
- awk简单教程
- AWK简单教程
- awk 简单教程
- 简明批处理教程----对批处理命令做了简单的介绍
- 史上最简单的SpringCloud教程 | 第十篇: 高可用的服务注册中心
- grub简单入门教程
- cordova插件开发,简单教程
- GitHub windows客户端简单使用教程
- .Net精品视频教程推荐,.Net学习就是这么简单!
- ffmpeg+sdl教程----编写一个简单的播放器5(同步视频到音频)
- [导入]Silverlight 2学习教程(二):开发简单的Silverlight 2应用程序
- 简单制作 OS X Yosemite 10.10 正式版U盘USB启动安装盘方法教程 (全新安装 Mac 系统)
- [图解教程] Axis2与Eclipse整合开发Web Service之一:简单的计算服务例子
- ffmpeg+sdl教程——编写一个简单的播放器2(输出视频到屏幕)