awk如何获取指定匹配字符串及之后本行的内容
时间: 2023-12-25 19:05:58 浏览: 94
查找匹配字符串
5星 · 资源好评率100%
可以使用awk的正则表达式和字符串函数来获取指定匹配字符串及之后本行的内容。
假设我们要获取以"error"开头的行及其后面的内容,可以使用如下命令:
```
awk '/^error/ {print; getline; print}' file.txt
```
其中:
- `/^error/`是一个正则表达式,表示以"error"开头的行。
- `{print; getline; print}`是一个动作块,表示打印当前行及其后一行的内容。
- `file.txt`是要操作的文件名。
这个命令会扫描文件中的每一行,如果发现以"error"开头的行,则打印该行及其后一行的内容。
如果你只想获取"error"开头的行的后面部分内容,可以改为:
```
awk '/^error/ {print substr($0, length("error")+1)}' file.txt
```
其中:
- `/^error/`是一个正则表达式,表示以"error"开头的行。
- `{print substr($0, length("error")+1)}`是一个动作块,表示打印当前行从"error"后面开始到末尾的内容。
- `file.txt`是要操作的文件名。
这个命令会扫描文件中的每一行,如果发现以"error"开头的行,则打印该行从"error"后面开始到末尾的内容。
阅读全文