sed 匹配两个单词之间多行内容
时间: 2023-07-18 17:48:10 浏览: 149
通过sed截取一行匹配内容
可以使用 `sed` 命令来匹配两个单词之间的多行内容,具体的命令如下:
```
sed -n '/word1/,/word2/{/word1/b;/word2/b;p}' file.txt
```
其中,`word1`和`word2`是你需要匹配的两个单词,`file.txt`是你需要在其中查找的文件名。`-n`参数表示只输出匹配到的内容,而不是整行输出。`/word1/,/word2/`表示匹配两个单词之间的所有行。`/word1/b`表示如果匹配到 `word1`,则跳过当前行,开始处理下一行。`/word2/b`表示如果匹配到 `word2`,则跳过当前行,开始处理下一行。`p`表示打印匹配到的行。
这个命令会输出两个单词之间的多行内容,包括换行符和空格。如果需要去掉空格和换行符,可以在命令末尾加上 `| tr -d '\n' | tr -d ' '`。
```
sed -n '/word1/,/word2/{/word1/b;/word2/b;p}' file.txt | tr -d '\n' | tr -d ' '
```
这样输出的内容就没有空格和换行符了。
阅读全文