📅  最后修改于: 2023-12-03 15:11:59.977000             🧑  作者: Mango
在 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'."
最后,脚本输出统计结果。它将单词和出现的次数插入到字符串中,并将文件名输出到标准输出。