2017-05-19 58 views
0

錯誤的地方,我有以下行的腳本:刪除與sed的產生「額外的字符」在OSX

sed -i.bak '2,${/rate = 3/d}' $FILENAME 

目的是執行刪除時跳過文件的前幾行。我收到以下錯誤:

sed: 1: "2,${/rate = 3/d}": extra characters at the end of d command 

我該如何才能按預期工作?

+0

做OSX上這項工作確認好嗎? 'seq 5 | sed'2,$ {/ [35]/d}''適用於gnu sed ....可能語法不同? – Sundeep

+0

@Sundeep nope,同樣的錯誤。也許我只需切換到GNU sed。 – ssb

+1

我隱約記得看到它所以......像'seq 5 | sed -e'2,$ {'-e'/ [35]/d'-e'}''...檢查'man sed',可能有關於構建此類序列的詳細信息 – Sundeep

回答

1

使用;應該幫助

$ seq 5 | sed '2,${/[35]/d;}' 
1 
2 
4 

由於@CRD以及在評論