我有一个文本文件,我想从中删除所有以第一个空行开头的行,最好使用一些标准的Unix工具,如sed / awk。
答案 0 :(得分:2)
使用Perl
perl -pe '/^\s+$/ and exit' < in.txt > out.txt
-p
围绕使用while(<>) {
在命令行上指定的脚本添加print }
和-e
。
答案 1 :(得分:1)
这应该有效:
awk '/^$/ {exit}{print}' < data
示例输入:
one two thre four five six seven eight nine ten eleven twelve thirteen fourteen fifteen THE END
示例输出:
# awk '/^$/ {exit}{print}' < data one two thre four five six seven
顺便说一句,如果您的“空行”可以包含空格和/或制表符,请使用:
'/^[ \t]*$/ {exit}{print}'
答案 2 :(得分:1)
使用sed:
$ sed -i '/^\s*$/,$d' file