📌  相关文章
📜  计算 unix bash 中单词的出现次数 - Shell-Bash (1)

📅  最后修改于: 2023-12-03 15:11:59.977000             🧑  作者: Mango

计算 Unix Bash 中单词的出现次数

在 Unix Bash 中,经常会需要统计某个文件中某个单词的出现次数。这个操作通常是使用 grep 和 wc 命令来实现的。

以下是一个简单的 Bash 脚本,可以统计文件中某个单词的出现次数:

#!/bin/bash

if [ $# -ne 2 ]; then
    echo "Usage: $0 <file> <word>"
    exit 1
fi

file=$1
word=$2

count=$(grep -o $word $file | wc -l)

echo "Word '$word' appeared $count times in file '$file'."

这个脚本接受两个参数:文件名和单词。它使用 grep 命令查找文件中所有出现的单词,并使用 wc 命令计数它们的数量。

使用示例:

$ ./count_word.sh file.txt hello
Word 'hello' appeared 10 times in file 'file.txt'.
脚本解释
参数检查
if [ $# -ne 2 ]; then
    echo "Usage: $0 <file> <word>"
    exit 1

首先,脚本检查是否接受了两个参数。如果不是,则打印用法说明并退出。

变量赋值
file=$1
word=$2

这里将第一个参数赋给变量 file,将第二个参数赋给变量 word

查找单词并计数
count=$(grep -o $word $file | wc -l)

这一行使用 grep 命令查找文件中所有包含单词的行,并将它们输出到标准输出。接下来,它使用管道将这些行传递给 wc 命令,以计数它们的数量。

输出结果
echo "Word '$word' appeared $count times in file '$file'."

最后,脚本输出统计结果。它将单词和出现的次数插入到字符串中,并将文件名输出到标准输出。