awk应用-信息的检索

awk应用-信息的检索

awk程序可以用于检索数据库中的信息,数据库实际上是各种类型的文本文件。文本文件的结构化越好,对其处理就越容易工作,尽管这个结果不过是由独立的单词组成的行。

下面这个首字母缩写词列表是一个简单的数据库。

$ cat acronyms

BASIC Beginner‘ s AI I-Purpose Symbol ic Instruction Code

CICS Customer Information Control System

COBOL Common Business Oriented Language

DBMS Data Base Management System

GIGO Garbage In, Garbage Out

GIRL Generalized Information Retrieval Language

制表符被作为字段分隔符。我们将看到一个程序,它将首字母缩写词作为输入并选择数据库中对应的行作为输出。(在下一幸中,我们将看到另外两个使用首字母缩写词数据库的程序。一个程序是读取首字母缩写词列表并在另一个文件中找到这些首字母缩写词出现的位置。另一个程序是定住这些首字母缩写词在文本文件中的第一次出现的位置并插入相应的首字母缩写词的描述。)我们编写的shell脚本命名为acro。它从命令行中获取第一个参数(首字母缩写词的名字)并将它传递给awk脚本,acro脚本如下:

$ cat acro

#!/bin/sh

#将shell的$1赋给awk的search变量

awk ‘$1 == search‘ search=$1 acronyms

在shell命令行中的第一个参数($1)被赋给变量search,这个变量作为参数传递给awk程序。传递给awk程序的参数在脚本之后说明。(这闲的有些混乱,因为在awk程序中$1代表每个输入行的第一个字段,而在shell脚本中$1代表命令行提供的第一个参数。)

下面的例子演示了如何用这个程序在列表中找到特殊的首字母缩写词。

$ acro CICS

CICS Customer Information Control System

注意,我们将参数作为字符串来检测($1==search) 。我们也可以将其写成一个正则表达式匹配($1~search)。

参考资料:http://www.linuxawk.com/communication/533.html

时间: 2024-08-18 18:15:15

awk应用-信息的检索的相关文章

学生信息的检索

#include<iostream>using namespace std;int main(){ int i,j,m,n,p[100],k[100],o; float a[100][100],junfen[100],student[100]; cout<<"输入要检索的学生个数和月考成绩的门数"<<endl; cin>>m>>n; for(i=1;i<=m;i++) {  for(j=1;j<=n;j++)  {

在选择“Add Library Package reference”时提示:无法加在一个或多个请求的类型,有关更多信息,请检索LoaderException属性

如图,在学习ASP.NET MVC 3.0的时候需要安装EFCodeFirst,按照教程的说明点击“工具”菜单下的 “Library Package Manager”子菜单下的“Add Library Package Reference”菜单选项,却出现了“无法加载一个或多个请求的类型”的错误. 重新安装了NuGet Package Manager还是无法解决问题. 之后到http://www.microsoft.com/zh-cn/download/details.aspx?id=16818下

Python 访问一个网址之后输入信息进行检索

window Python 3 Pycharm软件 from selenium import webdriver #导入Selenium的webdriver from selenium.webdriver.common.keys import Keys #导入Keys driver = webdriver.Chrome(executable_path=r'C:\Users\peiqiang\PycharmProjects\getHtml\chromedriver\win\chromedriver

第九章 利用DOM脚本检索,替换,设置,追加样式信息

我们浏览器里看到的网页是由以下三层信息构成的一个共同体: -结构层,由HTML或XHTML之类的标记语言负责去搭建文档的结构. -表示层,由CSS负责设置文档的呈现效果. -行为层,由JavaScript和DOM去实现文档的行为. style属性 文档的每个元素点还都有一个属性style. 样式信息都存放在这个对象的属性里:element.style.property 我们完全可以利用style属性把这个文本段的样式信息检索出来. 样式信息的检索 <body> <p id="e

linux awk(9)命令详解

简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理. awk有3个不同版本: awk.nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本. awk其名称得自于它的创始人 Alfred Aho .Peter Weinberger 和 Brian Kernighan 姓氏的首个字母.实际上 AWK

01 Apache Solr:提升检索体验 为什么是Solr

背景: 最近开发一个大型的仓储管理平台项目,项目的前身是无数个版本的历史悠久的基于CS模式的Windows桌面程序.然后对于每一个客户,我们可能需要为之定制比较个性化的特殊功能.于是,有一个核心研发团队,以一两年为周期开发一个核心功能版本的软件:然后拿出去推广销售,每每销售成功,做售前的同事都是拿了一大堆定制化的需求回来的:然后一场在核心功能上的定制和个性化扩展就开始了,完成开发就可以去客户现场实施了:最后,就会有部分维护的同事将这个客户的系统纳入他们的日常工作清单中.周而复始.诚然,这种方式在

AWK用法入门详解

简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理. awk有3个不同版本: awk.nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本. awk其名称得自于它的创始人 Alfred Aho .Peter Weinberger 和 Brian Kernighan 姓氏的首个字母.实际上 AWK

awk命令详解二

awk命令详解 简单使用: awk :对于文件中一行行的独处来执行操作 . awk -F :'{print $1,$4}'   :使用‘:’来分割这一行,把这一行的第一第四个域打印出来 . 详细介绍: AWK命令介绍 awk语言的最基本功能是在文件或字符串中基于指定规则浏览和抽取信息,awk抽取信息后,才能进行其他文本操作,完整的awk脚本通常用来格式化文本文件中的信息 1.   调用awk: 第一种命令行方式,如: awk [-Field-separator] 'commands' input

linux awk用法(主要为命令行)

简介 awk是一个强大的文本分析工具,相对于grep的查找,sed的编辑,awk在其对数据分析并生成报告时,显得尤为强大.简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理. awk有3个不同版本: awk.nawk和gawk,未作特别说明,一般指gawk,gawk 是 AWK 的 GNU 版本. awk其名称得自于它的创始人 Alfred Aho .Peter Weinberger 和 Brian Kernighan 姓氏的首个字母.实际上 AWK