我正在尝试使用 sed 使用 git 过滤器删除文件中第一个空行之后的所有行。
这似乎删除了空行之后的所有内容
sed -i '/^$/q' test.rpt
我如何也包含要删除的空行本身?
最佳答案
如果这是 GNU sed,只需使用 Q
而不是 q
。
sed -i '/^$/Q' test.rpt
对于 BSD sed,使用 -n
开关来抑制自动打印,并手动打印行。例如:
sed -n -i '/^$/q;p' test.rpt
PS:您可能希望将正则表达式更改为 ^[[:blank:]]*$
以将所有空白字符的行也视为空白行。
关于sed:删除匹配行和之后的所有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58929733/