2014-10-08 27 views
1

例如:假设关键字是“apple”,并且您通过单词“apple”搜索的文本文件被称为fruits.txt。在bash脚本中,对于一串字符(英文单词),如何计算外部文本文件中该单词的出现次数?

现在,假设fruits.txt是一个文本文件,其中包含一篇关于水果的论文(即,它不是一个列表;它是以段落的形式),并且您对单词“apple”出现的次数感兴趣(“苹果”,“应用程序”,“苹果”等等......字符“苹果”字符的所有排列被认为等同于“苹果”,因此被视为发生)。

你可以做到这一点的一种方法是bash脚本?

回答

1

这个人是很容易...

fruits.txt

apple 
APPLE 
AppLe 

This is a sentence that has the word AppLe in is. That is contained 
in a paragraph within the document. 

countApples.sh

#!/bin/bash 

grep -c -i -w apple fruits.txt 

这将打印4到标准输出,因为它会摹(重)字-w苹果,同时不区分大小写-i场计数-c文件fruits.txt

要注意的重要的事情在比赛是一个BASH脚本中,你是你的外壳内,所以你拥有所有的工具可用您的外壳脚本。在这种情况下,我们使用grep

+0

哇!这是一个非常有用的功能!我将不得不尝试将grep整合到我的工具箱中。 – 2014-10-08 05:12:06

+0

啊!我只是在脚本中试过这段代码,看起来grep只会返回关键字出现的行数,不一定是出现次数。 在下面的例子中,即使苹果出现6次,你的命令也会返回4! apple APPLE AppLe苹果APPLE 这是一个句子,它包含单词AppLe。该文档中的段落包含 。 – 2014-10-08 05:45:34

+0

很抱歉格式化了这个例子。基本上,苹果在文本中出现了6次(它在一行中重复,但grep折扣)。 – 2014-10-08 05:48:02

相关问题