bash如何使用grep命令在给定目录中的所有文件中搜索字符串

时间:2017-08-21 16:27:50

标签: bash shell

我的代码到现在为止。我是初学者。

count=0
for f in $ls do
count+= grep -c "classes" $f
done
echo $count

4 个答案:

答案 0 :(得分:2)

只需使用

grep -R <stringToSearch> <dirName>

例如,搜索当前目录中的“text”和

中的所有文件
grep -R "text" .

如果您想获得出现次数,请使用wc -l作为管道

grep -R "text" . | wc -l

答案 1 :(得分:0)

count=0
for f in *
do
if [ -f "$f" ] #check if that file is regular file
then
    count=$(($count+$(grep -c "classes" "$f")))
fi
done
echo $count

答案 2 :(得分:0)

我相信find会是此要求的最佳选择,请您试试并告诉我这是否对您有所帮助。

<script type="text/javascript" src="https://code.jquery.com/jquery-3.2.1.min.js"></script>
 <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.100.1/css/materialize.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/materialize/0.100.1/js/materialize.min.js"></script>
<!--This is the input tag -->
<input type="text" class="datepicker">
<script>
     $('.datepicker').pickadate({
        selectMonths: true, // Creates a dropdown to control month
        selectYears: 15, // Creates a dropdown of 15 years to control year,
        today: 'Today',
        clear: 'Clear',
        close: 'Ok',
        closeOnSelect: true // Close upon selecting a date,
    });
</script>

您也可以在上面提到您的路径代替DOT。

答案 3 :(得分:0)

grep -rnw -e“模式”

例如,如果要在目录〜/ abc / xyz的所有文件中找到“ helloWorld”,请运行以下命令-

  • grep -rnw〜/ abc / xyz -e“ helloWorld”

要在当前目录中搜索字符串“ HelloWorld”,请使用以下命令-

  • grep -rnw。 -e“ helloWorld”