2012-10-25 117 views
1

如何從以下字符串中的評論單詞中刪除所有單詞?從特定單詞開始後刪除所有單詞

echo "first_mail_sent_date_time datetime NOT NULL COMMENT 'The date and time'," | sed 's/ COMMENT \w*/ /g' 

上面的sed命令將只刪除單詞COMMENT。我需要在註釋後刪除所有內容,但保留最後一個逗號。

我可以用awk,但我期待的一致性的緣故SED解決方案。

awk -F'COMMENT' '{print $1 ","}' 

回答

1

使用此sed命令:

sed "s/ COMMENT.*'[^']*'/ /" 

TEST:

str="first_mail_sent_date_time datetime NOT NULL COMMENT 'The date and time'FOO," 
echo $str | sed "s/ COMMENT.*'[^']*'/ /" 

OUTPUT:

first_mail_sent_date_time datetime NOT NULL FOO, 
2

這可能會爲你工作(GNU SED):

sed 's/ COMMENT.*,/,/' file 
相關問題