Shell 中的awk命令
来源:互联网 发布:查看ubuntu位数 编辑:程序博客网 时间:2024/06/14 00:53
在linux上有很多处理文字的信息,awk也是其中的一种,希望它能给你带来方便
awk执行时,其浏览域标记为$1,$2....$n。这种方法称为域标识。使用$1,$3标识参照第1和第3域,注意这里用逗号隔开做域分割,$0标识所有域。
1.保存awk的输出
第一种,最简单的方式是使用输出重定向符号 > 文件名,下面的例子重2.定向输出的文件wow
$ awk '{print $0}' mfile.txt > wow
第二种,使用tee命令,在输出到文件的同时输出到屏幕。例如输出重定向文件hello,同时输出到屏幕,使用这种方法,在awk 命令结尾写入 |tee hello
3.打印报告头
输出域名之间用一些空格使之更容易划分,也可以在域间使用 tab 键加以划分。加入tab键,使用tab键速记引用符\t,后面讲对速记引用加以详细的讨论。也可以输出文件加入信息头。打印信息头放置在BEGIN模式部分,因为打印信息头被界定为一个动作,必须用大括号扩起来,在awk查看第一条记录前,信息头被打印。
例如:
$ awk 'BEGIN { print "NAME\tBel\n----------------------------------------------------------------"} {print $1"\t" $4}' myfile.txt
4.打印信息尾
如果在末行加入end of report信息,可使用END语句。END语句在所有文本处理动作执行完后才执行。END语句在脚本中的位置放置在主要动作之后。下面简单打印头信息并告知查询动作完成。
$ awk 'BEGIN {PRINT "Name\n--------"} {print $1} END {"EDN-OF-REPORT}’ myfile.txt
5.awk错误提示
几乎可以肯定,在使用awk时,将会在命令中碰到一些错误。awk将试图打印错误行,但由于大部分命令都只在一行,以此帮助不大。
第一次使用awk时,可能被错误信息搅得不知所措,但通过长时间和不断的学习,可总结以下规则,在碰到awk错误时,可相应的查找:
1.确保整个awk命令用单引号扩起来。
2.确保命令内存所有引号成对出现。
3.确保用花括号括起来动作语句,用圆括号括起条件语句。
4.可能忘记使用花括号,也许你认为没有必要,但awk不这样认为,将按之解释语法。
6.正则表达式
awk 比grep多两个元字符‘+’,‘?’,
+ 使用+匹配一个或多个字符。
? 匹配模式出现频率,例如使用/XY?Z/匹配XYZ或YZ。
awk 条件操作符
< 小于 >= 大于等于
<= 小于等于 ~ 匹配正则表达式
== 等于 !~ 不匹配正则表达式
!= 不相等
awk执行时,其浏览域标记为$1,$2....$n。这种方法称为域标识。使用$1,$3标识参照第1和第3域,注意这里用逗号隔开做域分割,$0标识所有域。
1.保存awk的输出
第一种,最简单的方式是使用输出重定向符号 > 文件名,下面的例子重2.定向输出的文件wow
$ awk '{print $0}' mfile.txt > wow
第二种,使用tee命令,在输出到文件的同时输出到屏幕。例如输出重定向文件hello,同时输出到屏幕,使用这种方法,在awk 命令结尾写入 |tee hello
3.打印报告头
输出域名之间用一些空格使之更容易划分,也可以在域间使用 tab 键加以划分。加入tab键,使用tab键速记引用符\t,后面讲对速记引用加以详细的讨论。也可以输出文件加入信息头。打印信息头放置在BEGIN模式部分,因为打印信息头被界定为一个动作,必须用大括号扩起来,在awk查看第一条记录前,信息头被打印。
例如:
$ awk 'BEGIN { print "NAME\tBel\n----------------------------------------------------------------"} {print $1"\t" $4}' myfile.txt
4.打印信息尾
如果在末行加入end of report信息,可使用END语句。END语句在所有文本处理动作执行完后才执行。END语句在脚本中的位置放置在主要动作之后。下面简单打印头信息并告知查询动作完成。
$ awk 'BEGIN {PRINT "Name\n--------"} {print $1} END {"EDN-OF-REPORT}’ myfile.txt
5.awk错误提示
几乎可以肯定,在使用awk时,将会在命令中碰到一些错误。awk将试图打印错误行,但由于大部分命令都只在一行,以此帮助不大。
第一次使用awk时,可能被错误信息搅得不知所措,但通过长时间和不断的学习,可总结以下规则,在碰到awk错误时,可相应的查找:
1.确保整个awk命令用单引号扩起来。
2.确保命令内存所有引号成对出现。
3.确保用花括号括起来动作语句,用圆括号括起条件语句。
4.可能忘记使用花括号,也许你认为没有必要,但awk不这样认为,将按之解释语法。
6.正则表达式
awk 比grep多两个元字符‘+’,‘?’,
+ 使用+匹配一个或多个字符。
? 匹配模式出现频率,例如使用/XY?Z/匹配XYZ或YZ。
awk 条件操作符
< 小于 >= 大于等于
<= 小于等于 ~ 匹配正则表达式
== 等于 !~ 不匹配正则表达式
!= 不相等
0 0
- shell中的AWK命令
- Shell 中的awk命令
- linux shell awk 命令
- awk执行shell命令
- Linux Shell 命令--awk
- shell awk命令
- awk调用shell命令
- shell命令之awk
- shell命令-awk
- linux shell awk命令
- shell awk命令
- shell脚本---awk命令
- shell awk命令使用
- Shell 命令之 awk
- shell命令-awk常用命令
- Shell中的awk
- awk里面执行shell命令
- Linux Shell之awk命令
- atitit.编程语言的未来趋势与进化结果
- ios开发-c语言之进制和位运算的学习
- HDU 5003 Osu!(水题)
- MYSQL常用命令列表
- Getting around non-executable stack (and fix)
- Shell 中的awk命令
- [LeetCode] Rank Scores - SQL
- UDP、TCP、RTP三种协议的总结
- 【OpenCV】矩阵操作总结
- 利用perl 改写awk统计
- 给Access Database添加密码
- 【网站开发】在新浪SAE上搭建一个博客
- hdu 5185
- 23种设计模式(20):责任链模式