为什么要使用Unix awk

系统 其他OS
使用Unix awk的理由有很多,awk是一个简单的工具,当然这是相对于其强大的功能来说的。的确,Unix有许多优秀的工具,例如Unix天然的开发工具C语言及其延续C++就非常的优秀。

你也许仍然会问,我为什么要使用Unix awk?使用Unix awk的第一个理由是基于文本的样式扫描和处理是我们经常做的工作,awk所做的工作有些象数据库,但与数据库不同的是,它处理的是文本文件,这些文件没有专门的存储格式,普通的人们就能编辑、阅读、理解和处理它们。

而数据库文件往往具有特殊的存储格式,这使得它们必须用数据库处理程序来处理它们。

既然这种类似于数据库的处理工作我们经常会遇到,我们就应当找到处理它们的简便易行的方法,Unix有很多这方面的工具,例如sed 、grep、sort以及find等等,Unix awk是其中十分优秀的一种。

使用Unix awk的第二个理由是awk是一个简单的工具,当然这是相对于其强大的功能来说的。的确,Unix有许多优秀的工具,例如Unix天然的开发工具C语言及其延续C++就非常的优秀。

但相对于它们来说,Unix awk完成同样的功能要方便和简捷得多。这首先是因为awk提供了适应多种需要的解决方案:从解决简单问题的awk命令行到复杂而精巧的awk程序设计语言,这样做的好处是,你可以不必用复杂的方法去解决本来很简单的问题。

例如,你可以用一个命令行解决简单的问题,而C不行,即使一个再简单的程序,C语言也必须经过编写、编译的全过程。其次,awk本身是解释执行的,这就使得Unix awk程序不必经过编译的过程,同时,这也使得它与shell script程序能够很好的契合。

最后,Unix awk本身较C语言简单,虽然awk吸收了C语言很多优秀的成分,熟悉C语言会对学习awk有很大的帮助,但awk本身不须要会使用C语言――一种功能强大但需要大量时间学习才能掌握其技巧的开发工具。

使用Unix awk的第三个理由是awk是一个容易获得的工具。与C和C++语言不同,awk只有一个文件(/bin/awk),而且几乎每个版本的Unix都提供各自版本的awk,你完全不必费心去想如何获得awk。

但C语言却不是这样,虽然C语言是Unix天然的开发工具,但这个开发工具却是单独发行的,换言之,你必须为你的Unix版本的C语言开发工具单独付费(当然使用D版者除外),获得并安装它,然后你才可以使用它。

基于以上理由,再加上Unix awk强大的功能,我们有理由说,如果你要处理与文本样式扫描相关的工作,awk应该是你的第一选择。在这里有一个可遵循的一般原则:如果你用普通的shell工具或shell script有困难的话,试试Unix awk,如果awk仍不能解决问题,则便用C语言,如果C语言仍然失败,则移至C++。

【编辑推荐】

  1. 关于Unix系统线路图的简单介绍
  2. Unix系统的心脏Unix文件系统
  3. 总结关于Unix系统相关的经验教训
  4. 对Unix系统发展期和现况的了解
  5. 学习Unix系统知识的一些经验之谈
责任编辑:小霞
相关推荐

2017-07-03 13:33:42

AndroidItemDecorat

2011-03-08 12:59:38

proftpd

2014-11-21 10:50:26

JavaString

2014-05-19 15:52:57

Apache StraApache

2011-04-14 09:30:15

集合框架

2013-09-27 11:33:57

交换机技术Vlan技术

2024-01-24 11:24:03

C++编程异常处理

2014-04-25 10:05:42

OpenStack私有云公共云

2023-09-21 09:00:00

Merge Que开发工具Mergify

2014-01-03 10:59:34

2023-03-06 08:01:25

structGo语言

2021-12-24 17:01:29

Linux工具系统

2024-01-01 08:57:55

ODBCSqlServer数据库

2022-04-26 16:56:20

行为数据数据

2020-08-24 07:03:10

物联网设备RTOS物联网

2018-05-01 06:43:33

2024-02-20 22:13:49

SQL语句编程

2021-02-18 09:23:47

数据库分区数据库仓库

2015-11-25 13:43:56

2017-12-29 09:32:55

无服务器架构排查
点赞
收藏

51CTO技术栈公众号