sed删除空行方式
GUN下sed删除空格
最常见的一种:
1 | sed '/^$/d' file.txt |
1.说明
/^$/:正则匹配空行,表示“行首紧跟行尾”,即没有内容。d:sed的 delete 命令,删除匹配到的行。
2. 示例
假设 file.txt 内容如下:
line 1
line 2
line 3
运行:
1 | sed '/^$/d' file.txt |
输出:
line 1
line 2
line 3
保存到原文件(覆盖原文件)
注意:-i 会直接修改文件,建议先备份。
1 | sed -i '/^$/d' file.txt # Linux |
删除包含空白字符的“空行”(比如空格或Tab)
如果你想删除只包含空格、制表符等的“看似空”的行,用这个更通用的写法:
1 | sed '/^[[:space:]]*$/d' file.txt |
^[[:space:]]*$:匹配仅由空格、Tab 等组成的行。