我想要删除文本文件中的所有空白行。有没有快速的方法可以做到这一点?
我拥有的
line one
line two
我想要的是
line one
line two
我正在使用 Notepad++,因此,使用 Notepad++ 的解决方案值得赞赏。
我有赛格威所以如果没有别的,脚本就很好了。
答案1
使用菜单:
1)选择所有文本(Ctrl-A)
2)TextFX -> TextFX 编辑 -> 删除空白行
答案2
宏可能会很可怕,如果超出一行,可能会意外丢失第一个字符。
- 视图 > 显示符号 > 显示行尾
请注意,它以 CR LF 结尾(这是回车符和换行符,即 \r\n)Ctrl+H,然后启用扩展替换“\r\n\r\n”为“\r\n”
它会循环并删除双倍行距,如果行距不止双倍,你可能需要重复此操作。(另一件需要考虑的事情是:编辑 > 修剪尾随空格。)
答案3
在替换对话框中切换到扩展搜索模式。
找什么:\r\n\r\n
用。。。来代替:\r\n
按“全部替换”。所有空白行都消失了。
答案4
在 Cygwin 中:
$ sed -i '/^$/d' <name_of_your_textfile.txt>
或者,如果允许“空行”包含制表符和空格:
$ sed -i '/^[ \t]*$/d' <name_of_your_textfile.txt>
代表-i
“就地编辑”,因此如果您的文本文件很有价值,您可能需要使用不带的命令-i
并将输出传送到另一个文件,查看结果然后重命名它。
使用Vim(应该与 Cygwin 一起提供,但也有原生的 Windows 版本):
:%g/^[ \t]*$/d
这样做的好处是您可以直接看到结果,并可以通过按“u”撤消结果。您还可能会遇到更少的 Windows 行尾问题(取决于您的 Cygwin 配置)。