首页 > 解决方案 > 使用 GREP 进行 Bash 计数

问题描述

我正在尝试查找文件中的单词。如果找到该单词,它将打印“找到”。否则“未找到”。

但是在尝试的过程中,我对 bash 的字数感到困惑。

有人能帮我吗?

谢谢

#!/bin/bash

a=`grep -c -w $1 /file.txt`
if [ $a > 0 ]
then
    echo Found
else
    echo Not Found
fi

标签: bash

解决方案


我建议:

if grep -q -w "$1" /file.txt; then

来自man grep

通常,如果选择了一行,则退出状态为 0,如果未选择任何行,则退出状态为 1,如果发生错误,则退出状态为 2。但是,如果使用 -q 或 --quiet 或 --silent 并选择了一行,即使发生错误,退出状态也是 0。


推荐阅读