0
這裏是我的一行:操縱SED方面
sed -n '/BEGIN/,/END/{$d;1d;p}' query
和查詢:
trash BEGIN first labas END nieko nėra BEGIN second iki END nesimato
我期待這樣的結果:
labas iki
不過,我得到這個:
BEGIN first labas END BEGIN second iki END
我對sed上下文有什麼誤解?不應該{$d,1d;p}
刪除匹配輸入的第一行和最後一行?
的確是它的工作原理,但並不有助於解釋爲什麼我的版本不..謝謝。你能給我一個指針嗎?這兩個斜線對於大括號中的上下文究竟做了什麼? – 2012-03-01 00:52:51
只有當文件的第一行和最後一行之間有'/ BEGIN /,/ END /'範圍時,您的版本才能正常工作。 '//'是最後一個匹配正則表達式的縮寫,在本例中是'/ BEGIN /',後面是'/ END /'。在這些條件下,它不會打印出來,但會在它們之間的線上。 – potong 2012-03-01 01:09:08