Grep

Grep 表示單詞而不是行

  • March 28, 2022

我需要在文本文件中搜尋字數。該文件包含句子行,我只關心單詞出現的次數而不是行數。如何告訴 grep 搜尋單詞而不是行?

例如,如果我使用,grep -c '^ab'(以 開頭的單詞ab),它只返回以 開頭的行數ab,而不是以 開頭的單詞數ab

使用 GNU grep 您可以使用該-o標誌來獲取所有匹配項,然後對它們進行計數wc -l

grep -o '\<ab' file.txt | wc -l

或者我想你可以用 grep 本身來計算:

grep -o '\<ab' file.txt | grep -c ''

(“ \<”表示“單詞的開頭”。)

如果您想計算 中的單詞file.txt,而不是行,只需將每個單詞放在自己的行中:

tr " " "\n" file.txt | grep -c '^ab'

引用自:https://unix.stackexchange.com/questions/697156