awk记录和域
来源:互联网 发布:淘宝sku图片尺寸是多少 编辑:程序博客网 时间:2024/06/04 17:44
Awk记录和域
awk认为输入的文件是结构的,将每个输入文件行定义为记录,行中的每个字符串定义为域,域之间用空格、TAB键或其他符号分隔,这些符号叫做分隔符。
awk默认空格键是分隔符,TAB键被认为是连续的空格键来处理(两个或多个连续的空格键或tab键当作一个分隔符处理)。
awk可以用-F选项改变分隔符(-F表示改变分隔符,-f表示调用awk脚本);还可以通过在BEGIN字段设置环境变量FS来改变分隔符。举例:
awk -F“\t” '{print $3}' /proc/devices //将分隔符该做 /t TAB键
awk ' BEGIN {FS = “\t”}{print$3} ' /proc/devices //将分隔符该做 /t TAB键
awk定义域操作符$指定执行动作的域,域操作符$后面跟的数字和变量来标识域的位置,每条记录的域从1开始编号,$1表示第一个域,$2表示第二个域,$0表示所有域。举例(分隔符为空格键):
Li Hua 1234567
(n个空格) (n个TAB键)
第一个域($1) 第一个域($2) 第一个域($3)
awk '{print $1 $2 $3}' input //打印三个域的字符串
awk 'BEGIN{one = 1; two = 2}{print $(one+two)}' input //打印第三个域的字符串
awk '{print $0}' input //打印所有域的字符串
不同的输入文件,需要根据实际情况设置相应的分隔符,也可以通过正则表达式将分隔符设置为多个字符。示例:
FS = “\t” 将一个tab键作为分隔符
FS = “\t+” 将一个或多个tab键作为分隔符
对记录 waz\t\tcq, 1会解释为 waz 空域 cq三个域 , 2会解释为 waz cq两个域
本文完全参照 <linux shell 编程从初学到精通> 华清远见嵌入式培训中心 伍之昂等编著
- awk记录和域
- 1.awk 模式匹配 记录和字段
- awk、sed和cut 学习记录
- awk记录
- awk记录
- 【awk】awk逆序打印记录
- awk 学习记录
- awk学习记录
- awk过滤IP记录
- AWK问题日常记录
- awk多行记录
- awk文本统计记录
- awk学习记录
- awk 学习记录1
- awk命令记录
- awk分段处理记录并格式化输出(处理LDAP文件和DHCP记录)
- awk分段处理记录并格式化输出(处理LDAP文件和DHCP记录)
- awk之取每天的第一条记录和最后一条记录
- zoj 1130 poj 1392 Ouroboros Snake (欧拉路径)
- Visiual Studio2012 CLR20r3
- android使用全局变量的两种方法
- 调试技巧--IDEA or AS
- 网页布局核心思想和小知识点
- awk记录和域
- HDU 3264 Open-air shopping malls(二分+圆交)
- Android自定义控件
- 谈谈innodb和myisam的区别
- 【网络流】 POJ 2455 Secret Milking Machine
- Leetcode_27_Remove Element
- hdu 2894 DeBruijin
- Oracle User、Schema、Default Tablespace
- OC学习篇之---第一个程序HelloWorld