如何获得所有文件中单词的出现?但是每个目录的单词数而不是单个数字

时间:2019-08-22 17:44:50

标签: linux unix aix

我想在所有文件中获得给定的字数,但要按目录而不是单个字数。通过转到特定目录,我确实可以通过简单的-i获得字数统计。当目录结构如下时,我想获取每个目录的字数。

grep foo error*.log | wc -l

1 个答案:

答案 0 :(得分:1)

更新:以下命令可以在AIX上使用:

#!/bin/bash

for name in /path/to/folder/* ; do
    if [ ! -d "${name}" ] ; then
        continue
    fi
    # See: https://unix.stackexchange.com/a/398414/45365
    count="$(cat "${name}"/error*.log | tr '[:space:]' '[\n*]' | grep -c 'SEARCH')"
    printf "%s %s\n" "${name}" "${count}"
done

在GNU / Linux上,以及GNU findutils和GNU grep

find /path/to/folder -maxdepth 1 -type d \
    -printf "%p " -exec bash -c 'grep -ro 'SEARCH' {} | wc -l' \;

用实际搜索词替换SEARCH