2016-09-05 9 views
3

Linuxでは、私は[test]行の後に次の2行を取得するためにこれを使用する:Macのは、Mac上のsed 'pコマンドの後に余分な文字' を

sed -n '/\[test\]/{n;p;n;p}' my-file 

を私が手:

sed: 1: "/\\[test\\]/{n;p;n;p}": extra characters at the end of p command. 

です両方のプラットフォームまたはMac上で動作する式は、まったく別のコマンドを使用する必要がありますか?

+0

エラーをそのまま貼り付けると便利です。 – sjsam

答えて

6

最後p

sed -n '/\[test\]/{n;p;n;p;}' my-file 

(ない関連した後、余分なセミコロンを追加します。 Mac版にも、MSYSで失敗する)

3

OSX(BSD)sedは、それぞれ;または別の行で終了する必要があります。

だから、これは動作するはずです:

sed -n '/\[test\]/{n;p;n;p;}' my-file 

、あるいはこの1つは動作します:

sed -n '/\[test\]/{ 
n 
p 
n 
p 
}' my-file 
関連する問題