如何使用SED命令将文本前两行替换为一个空行?
用SED将文本前两行替换为单个空行的方案
直接使用对应命令即可实现需求:
跨平台兼容命令(适配Linux、macOS自带的sed版本)
sed '1,2c\ ' 你的目标文件路径
如果是Linux环境默认的GNU sed,还可以使用更简洁的写法:
sed '1,2c\' 你的目标文件路径
命令逻辑说明
1,2指定sed的处理范围为文本的第1行到第2行c\是sed的整段替换命令,会将选中的两行整体替换为命令后定义的内容,此处无额外内容,即替换为单个空行- 第3行及之后的所有内容不会被修改,原样输出
效果验证
使用你提供的样例输入执行命令后,输出结果和预期完全一致,第一行为空行(对应标注的<> blank line位置):
123 234 235 456
如果需要直接将修改写入原文件、不输出到终端,可以添加-i参数:
- GNU sed(Linux默认):
sed -i '1,2c\' 目标文件路径 - BSD sed(macOS默认):
-i后需要传入空备份后缀参数,写法如下:
sed -i '' '1,2c\ ' 目标文件路径
内容的提问来源于stack exchange,提问作者Jashwanth CH
相关产品推荐
相关产品推荐

