我學習使用SED,並有一個假設條件:如何更換許多中間的空行,只有1空行各
bash$ cat states
California
Massachusetts
Arizona
Wisconsin
我想輸出:(基本上,我想只有一個空行之間)
California
Massachusetts
Arizona
Wisconsin
請建議使用sed的方法。 它應該使用的多模式空間概念等
感謝,
Jagrati
在迴應一個評論,好吧,我進行了一些測試腳本,我是錯的hypoptics地址空間選擇標準只應用一次。它似乎一次又一次被激活。
bash$ cat file
a
b
c
a
b
c
bash$ sed -e '/a/,/b/s/$/x/g' file
ax
bx
c
ax
bx
c
我有印象,它會產生:
ax
bx
c
a
b
c
所以可能有人請解釋逗號的情況下,sed的收益如何分離的地址空間。
桑達處理在一個循環中該文件。正則表達式地址不是文件中的絕對位置。評估每條線以查看它是否落在正則表達式地址範圍內。一旦達到範圍的結尾,則恢復正則表達式範圍開始的測試。 – 2010-07-17 10:29:06