返回整个句子,而不只是返回一行

问题描述

| grep显示找到搜索词的行。我有一个文本文件,其中没有换行符,并且整个文本都在一行上。有什么方法可以指示grep显示左右内容(就像-after,-before一样)? 我希望看到整个句子。两个句号之间的单词。 (即找到单词的句子)     

解决方法

        您可以将文本临时切成几行:
cat text.txt | sed \'s/\\./.\\n/g\' | grep pattern
    ,        使用awk和句点作为记录分隔符,并按照所需的模式过滤记录:
awk -v RS=\".\" \'/pattern/\' file
简写为:
awk -v RS=\".\" \'/pattern/{print}\' file
    ,        尝试这个:
grep -o \'[^.]*word[^.]*\\.\' file