https://www.cnblogs.com/sisier/p/4453523.html
cat a.txt | sed '/group\|into\|sss/d' #刪除文件a.txt中帶有字符串group或者into或者sss的行,“或”運算符需要轉義
Linux sed之正則表達式
https://www.cnblogs.com/ztteng/articles/3112599.html
一、元字符集
^
錨定行的開始 如:/^sed/匹配所有以sed開頭的行。
$
錨定行的結束 如:/sed$/匹配所有以sed結尾的行。
.
匹配一個非換行符的字符 如:/s.d/匹配s后接一個任意字符,然后是d。
*
匹配零或多個字符 如:/*sed/匹配所有模板是一個或多個空格后緊跟sed的行。
[]
匹配一個指定范圍內的字符,如/[Ss]ed/匹配sed和Sed。
[^]
匹配一個不在指定范圍內的字符,
如:/[^A-RT-Z]ed/匹配不包含A-R和T-Z的一個字母開頭,緊跟ed的行。
\(..\)
保存匹配的字符,如s/\(love\)able/\1rs,loveable被替換成lovers。
&
保存搜索字符用來替換其他字符,如s/love/**&**/,love這成**love**。
\<
錨定單詞的開始,如:/\<love/匹配包含以love開頭的單詞的行。
\>
錨定單詞的結束,如/love\>/匹配包含以love結尾的單詞的行。
x\{m\}
重復字符x,m次,如:/0\{5\}/匹配包含5個o的行。
x\{m,\}
重復字符x,至少m次,如:/o\{5,\}/匹配至少有5個o的行。
x\{m,n\}
重復字符x,至少m次,不多於n次,如:/o\{5,10\}/匹配5--10個o的行。
https://www.cnblogs.com/aaronhoo/p/5284991.html
sed替換字符串時,使用正則表達式的注意事項
sed的使用方法為:
使用單個模式替換:sed 's/pattern/replacement/flags' filename,例如echo 'abc' | sed 's/a/A/'-->Abc
使用多個模式同時替換:sed 's/pattern1/replacement1/;s/pattern2/replacement2/' file,
例如,sed 's/^\s*//;s/\s*$//' totrim.txt 可以實現trim()函數的效果(去掉字符串兩端的空格字符)
pattern可以使用正則表達式,不過寫法要注意,例如一般用\d表示一個十進制數,但在sed里,必須用[0-9]來表示,正則表達式一般用+(加號)表示一個或多個,但寫在sed里前面必須加上轉椅符號反斜杠,
如sed 's/[0-9]\+$//g' file,表示去掉文件中每行末尾的一個或多個數字。
更多注意事項需要參考《Linux命令行與shell腳本編程大全 第2版》、《Linux shell腳本攻略第2版》