sed 全称 stream editor,与正则表达式配合使用,使用频率很高。 可与find配合使用。
只说下常用的
一、单行替换与刪除
echo -e 'abc \n \n abc' > test
abc换为cba
sed -i ‘s/abc/cba/g’ test
删除开头空格
sed -i 's/^\s\+//g' test`
删除行尾空格
sed -i 's/\s\+$//g' test
删除空行
sed -i '/^$/d' test
删除包含空格或制表符的空行
sed '/^\s*$/d' test
或
sed -i '/^\s\{0,\}$/d' test
删除//至行尾
sed 's/\/\/.*$//g' test
二 、多行
删除abc 至 abc 之间内内容
sed '/abc/,/abc/d' test
abc 至 abc 之间内容替换为ab
sed '/abc/,/abc/c ab' test
/* */之间内容替换为//ab
sed '/\/\*/,/\*\//c \/\/ab' test
/* */之间 删除
sed '/\/\*/,/\*\//d' test
注
-i 直接修改文件 默认输出终端
a 新增 c 替换 d 删除
^ 行首
$ 行尾
{m,n} 前面字符出现 m-n次