2016-02-06 56 views
0

我有一個文本文件,我想從中刪除所有以第一個空行開始的行,最好使用一些標準的Unix工具(如sed/awk)。從文本文件的第一個空白行開始刪除所有內容

+0

你想在文件中刪除,每一行開頭的空間? – dev35000

+0

沒關係 - 我在[http://stackoverflow.com/questions/32254011/best-way-to-remove-all-lines-from-a-text-file-starting-at-first-empty -線] – pixel

回答

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}' 
1

用Perl

perl -pe '/^\s+$/ and exit' <in.txt> out.txt 

-p增加while(<>) {print }周圍用命令行指定的腳本-e

1

隨着SED:

$ sed -i '/^\s*$/,$d' file 
相關問題