有没有办法创建一个打印出特定段落的 bash 脚本,即在空行之间打印特定的文本块



处理读取文本文件并根据输入重定向段落的脚本。假设输入为 2,它会将文本文件中的第二段重定向到另一个文件。文本文件没有标题,它们将由空行分隔的纯文本段落。我一直在看 egrep,但我对正则表达式不是很熟悉,所以我不确定从哪里开始。任何帮助将不胜感激。

使用 GNU awk ,这个函数

print_nth_paragraph() {
    awk -v RS= -v p="$1" 'NR == p'
}

将打印其标准输入的第 N 段,N 是第一个也是唯一一个参数。段落由两个或多个连续的新行分隔。根据您的需求进行调整。

最新更新