我的 grep 命令是:
grep -Pzo -a 'Start(.*\n)*?.*?End' testfile.txt
并且 testfile.txt 包含:
ItsTestStartFromHereEndNotVisibleStartFrom
HereEndOkNotVisible
输出:
$ grep -Pzo -a 'Start(.*\n)*?.*?End' testfile.txt
StartFromHereEndStartFrom
HereEnd
它工作正常,但是当“开始”和“结束”之间存在空字符时,它不起作用。我知道这是因为我使用了“-z”选项,但我需要它来支持多行。
例如,这是我的带有空字符的内容:
ItsTestStartFrom[\x00]HereEndNotVisibleStart[\x00]From
HereEndOkNotVisible