组合使用小型实用程序来完成大型任务.PDFVIP

组合使用小型实用程序来完成大型任务.PDF

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
组合使用小型实用程序来完成大型任务

/developerWor...nux/index.shtml 关于本教程 本教程展示如何使用 GNU 文本实用程序集合来处理日志文件、文档、结构化文本数据库, 以及其他文本性的数据或内容源。本集合中的实用程序经过 UNIX/Linux 开发人员几十年的 改进,已证明是有用的,并且应该是您用于一般文本处理任务的第一选择。 本教程是为 Linux/UNIX 程序员和系统管理员编写的,属于初级至中级水平。 学习本教程的前提条件 对于本教程,您应该一般地熟悉一些类 UNIX 环境,特别是命令行 shell。您本身不需要是 一个程序员:事实上,本教程所讲述的技术将对系统管理员和需要处理特殊报告、日志文件、 项目文档以及类似内容的用户最有用(因此对正式的编程代码 处理不是那么有用)。在学 习本教程的整个过程中,最好随时打开一个 shell,并试验本教程所展示的例子以及它们的 一些变化形式。 基本概念将在简介:UNIX 哲学中回顾,您可以在其中复习管道、流、grep 和脚本编程的基 础知识。 关于作者 David Mertz 对于处理文本具有持久的爱好。 他甚至专门为此编写了一本书 Text Processing in Python ,并且经常在他为 IBM developerWorks 撰写的文章和专栏中谈及 相关的主题。 关于本教程内容的技术问题和意见,请联系 David Mertz 或者单击任一屏顶部的反馈。 David 的 Web 站点 也是相关信息的一个很好来源。 关于本教程内容的技术问题和意见,请联系 David Mertz 或者单击任一屏顶部的反馈。 David 的 Web 站点 也是相关信息的一个很好来源。 组合使用小型实用程序来完成大型任务 在诸如 Linux、FreeBSD、Mac OS X、Solaris、AIX 等受 UNIX 启发的操作系统中,开发环 境甚至 shell 和工作环境的背后都存在一种共同的哲学。 这种哲学的要旨就是使用小型实 用程序来 完满地(没有其他负面影响)完成每个小型任务,然后组合使用这些实用程序来 执行复合任务。GNU 项目所产生的大多数产品都支持这种哲学――实际上特 的 GNU 实现 已经移植到许多平台上,有些平台甚至传统上未被看作是 UNIX 类的。然而,Linux 内核必 是更有点单一性的软件――虽然如此,但是其内核模块、文件系统、视频驱动程序等都是 相当组件化的。 对于本教程,您应该一般地熟悉一些类 UNIX 环境,特别是命令行 shell。 您本身不需要 是一个程序员:事实上,本教程所讲述的技术将对系统管理员和需要处理特殊报告、日志文 件、项目文档以及类似内容的用户最有用(因此对正式的编 程代码处理不是那么有用)。 在学习本教程的整个过程中,最好随时打开一个 shell,并试验本教程所展示的例子以及它 们的一些变化形式。 文件和流 如果这种 UNIX 哲学 具有倡导最低限度的模块化组件和协作的道义论的一面的话,它还具 有本体论的一面:一切皆文件。抽象地说,文件 只是支持一些操作的对象:首先是读取 和写入字节,但是也有诸如指出其当前位置和弄清何时到达文件结尾这样的操作。UNIX 权 限模型也是围绕文件的概念来建立的。 具体地说,文件可以是可记录介质上的一个具体区域 (并具有由文件系统提供的关于其名称、 大小、在磁盘上的位置等的标记)。但是一个文件也可以是 /dev/ 层次结构中的一个虚拟 设备,或者通过 TCP/IP 或通过诸如 NFS 这样的高级协议传来远程流。重要的是,特殊文 件 STDIN、STDOUT 和 STDERR 可用于读取或写到用户控制台,以及用于在实用程序之间传 递数据。这些特殊文件可通过虚拟文件名称来表示,并具有特殊的语法: STDIN 是/dev/stdin 和/或 /dev/fd/0 STDOUT 是 /dev/stdout 和/或 /dev/fd/1 STDERR 是 /dev/stderr 和/或 /dev/fd/2 UNIX 的文件本体论的优点在于,这里讨论的大多数实用程序都将统一而中立地处理各种数 据源,而不管实际位于字节传输之下的存储或传输机制是什么。 重定向和管道 UNIX/Linux 实用程序的通常组合方式是使用管道和重定向。许多实用程序或者自动地或者 可选地从 STDIN 接受输入,并将它们的输出发送到 STDOUT (特殊的消息则发送到 STDERR)。管道将一个实用程序的 STDOUT 发送到另一个实用程序的 STDIN (或者发送到

文档评论(0)

ldj215322 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档