2013-09-05 96 views
0

我想從第一個空行刪除一個文件到一個.txt文件的末尾。我正在使用以下行代碼:刪除空行到頁面結尾

sed -i -b '/^$/,$d' 

(幾乎直接從Unix電源工具採取)。在多頁文檔,這成功地刪除文本的第二頁,但仍留下的第一頁的頁腳(見下文略作修改的空間*文本):

29   0235600   Drain Pan 
62   6151060   Nut, Serrated 5/16-18 Hex 
      7003932 
30   6201920   Screw, 8-15X2 6-Lobe PH     
          W/H Network Svce 
63 
64   7003931   W/H Network Svce 
























                  4 
     #  1 - Revision D - February, 2007 
     375844 
      Previous Page    Main Menu   Model 648PRO Menu    Next Page 

我使用GNU sed的4.2版本.1

請提出任何建議。

+1

「頁面」?這個文件的格式是什麼?你可以刪除線條來產生一個長達十幾行的例子嗎?你確定那些是空行,而不是其他空白嗎? – Beta

+0

文檔格式爲.txt。我認爲它實際上是一個UT-8。這個例子並沒有像我所希望的那樣出現。實際上在大塊數據之間大約有十幾行空行。編輯器將它們顯示爲每行上的CR LF,以及每行包含數據的末尾。 –

+0

你在Windows上嗎? – Endoro

回答

1

最後那些東西(CR/LF)是DOS風格的行尾字符。我不知道爲什麼-b選項不能與他們的應對,但你可以試試這個雜牌:

sed -i '/^.$/,$d' 
+0

謝謝,Kludge。這工作! –