sed
是一个在Linux和其他Unix-like系统中常用的流编辑器,用于对输入流(文件或管道)进行基本的文本转换。它可以非常方便地进行文本替换、插入、删除等操作。
sed命令的基本格式为
sed [options] 'command' file(s)
其中,常用的参数有
- -n:只打印模式匹配的行
- -e:直接在命令行模式上进行sed的动作编辑
- -f:将sed的动作写在一个文件内,-f filename 则可以运行filename内的sed动作
- -r:sed的动作支持的是扩展型正规表示法的语法。(默认是基础正规表示法语法)
- -i:直接修改读取的文件内容,而不是输出到终端
常见用法示例
-
👇替换文本
sed 's/Aven/Even/' file
这将把file文件中的第一个’Aven’替换为’Even’。
-
👇删除行
sed '/Even/d' file
这将删除file文件中包含’Even’的所有行。
-
👇多点编辑
sed -e 's/Firm/Film/' -e '/Top/d' file
这将在file文件中将’Firm’替换为’Film’,并删除所有包含’Top’的行。
小结
sed
是一个强大的文本处理工具,可以进行文本替换、删除、插入等操作,是Linux文本处理的重要工具之一。