awk应用信息的检索

本文发布时间: 2019-Mar-22
awk应用-信息的检索awk程序可以用于检索数据库中的信息,数据库实际上是各种类型的文本文件。文本文件的结构化越好,对其处理就越容易工作,尽管这个结果不过是由独立的单词组成的行。下面这个首字母缩写词列表是一个简单的数据库。$ cat acronymsBASIC Beginner' s AI I-Purpose Symbol ic Instruction CodeCICS Customer Information Control SystemCOBOL Common Business Oriented LanguageDBMS Data Base Management SystemGIGO Garbage In, Garbage OutGIRL 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 CICSCICS Customer Information Control System注意,我们将参数作为字符串来检测($1==search) 。我们也可以将其写成一个正则表达式匹配($1~search)。参考资料:http://www.linuxawk.com/communication/533.html


(以上内容不代表本站观点。)
---------------------------------
本网站以及域名有仲裁协议。
本網站以及域名有仲裁協議。

2019-May-25 12:56pm
栏目列表