跨越多行的FreeBSD MacOS Grep

跨越多行的FreeBSD MacOS Grep,macos,terminal,grep,Macos,Terminal,Grep,使用MacOS High Sierra,尝试使用grep提取两个“标记”之间的文本。预期输出应为“类型”。下面是.txt文件: <genre> The Genre </genre> 体裁 以下是无法使用的grep命令: genre=$(grep -o '(?<=<genre>).*?(=<\/genre>)' textfile.txt) genre=$(grep-o'(?如果使用PCRE正则表达式,请将grep与-P选项一起使用,或者

使用MacOS High Sierra,尝试使用grep提取两个“标记”之间的文本。预期输出应为“类型”。下面是.txt文件:

<genre>
The Genre
</genre>

体裁
以下是无法使用的grep命令:

genre=$(grep -o '(?<=<genre>).*?(=<\/genre>)' textfile.txt)

genre=$(grep-o'(?如果使用PCRE正则表达式,请将
grep
-P
选项一起使用,或者使用
pcregep
(基于行)
grep
不是它的工具。这是一个好的开始:不能将-P选项与MacOS/BSD grep命令一起使用。