网站大量收购闲置独家精品文档,联系QQ:2885784924

AWK用法详解.pdf

  1. 1、本文档共35页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
AWK用法详解.pdf

AWK awk 是一种程序语言. 它具有一般程序语言常见的功能. 因awk语言具有某些特点, 如 : 使用直译器(Interpreter)不需先行编译; 变量无类 型之分(Typeless), 可使用文字当数组的下标(Associative Array)...等特色. 因此, 使用awk撰写程序比起使用其它语言更简洁便利且节省时间. awk还具有一些 内建功能, 使得awk擅于处理具数据行(Record), 字段(Field)型态的资料; 此外, awk内建有pipe的功能, 可将处理中的数据传送给外部的 Shell命令加以处理, 再 将Shell命令处理后的数据传回awk程序, 这个特点也使得awk程序很容易使用 系统资源. 由于awk具有上述特色, 在问题处理的过程中, 可轻易使用awk来撰写一些小工 具; 这些小工具并非用来解决整个大问题,它们只扮演解决个别问题过程的某 些角色, 可藉由Shell所提供的pipe将数据按需要传送给不同的小工具进行处理, 以解决整个大问题. 模式和动作 单引号 输入文件 任何a w k语句都由模式和动作组成。 模式可以是任何条件语句或复合语句或正则表达式。模式包括两个特殊字 段B E G I N和E N D。动作即对数据的操作 如打印、计算等 提示符 域和记录 模式 动作 a w k执行时,其浏览域标记为$ 1,$ 2 . . . $ n。这种方法称为域标识。$0代 表整条记录。 记录 域 调用awk 第一种是命令行方式: awk 【-F filed-separator】 ‘commands’ input-files awk ‘BEGIN{print “Good afternoon ”} {total += $1} END{print total}’ input-file 第二种方法是将所有a w k命令插入一个文件,并使a w k程序 可执行,然后用a w k命令解释器作为脚本的首行,以便通过 键入脚本名称来调用它。 chmod u+x print.awk ./print.awk input-file 第三种方式是将所有的a w k命令插入一个单独文件,然后调 用: awk –f print.awk input-file 保存a w k输出 有两种方式保存s h e l l提示符下a w k脚本的输出。 A、使用输出重定向符号文件名,下面的例子重定向输出到文件,使 用这种方法要注意,显示屏上不会显示输出结果。 awk ‘{print $0}’ chr10.snp chr10.newsnp B、第二种方法是使用t e e命令,在输出到文件的同时输出到屏幕。 awk ‘{print $0}’ chr10.snp | tee chr10.newsnp 常见应用 打印所有记录和打印指定域 awk ‘{print $0}’ example.txt awk ‘{print $1,$4}’ example.txt $1 $4 打印报告头和信息尾 awk BEGIN{print chr\tpos\tbase\tnum\tp-value} /chrX/ {print} END{print end of the data} example.txt 报告头 信息尾 BEGIN和END BEGIN和END部分在awk中都仅执行一次且有各自的用途 如BEGIN用在程序一开始时, 改变awk切割字段的方式、程序一开始时, 改 变awk分隔数据行的方式、设定变量的起始值、印出一行

文档评论(0)

tangtianxu1 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档