Linux sed命令
Linux sed命令是利用script来处理文本文件。
sed可依照script的指令,来处理、编辑文本文件。
Sed主要用来自动编辑一个或多个文件;简化对文件的反复操作;编写转换程序等
用法:
sed [-hnV][-e<script>][-f<script文件>][文本文件]
参数:
-e<script>, --expression=<script> 以选项中指定的script来处理输入的文本文件。 -f<script文件>, --file=<script文件> 以选项中指定的script文件来处理输入的文本文件。 -h, --help 显示帮助。 -n, --quiet, --silent 仅显示script处理后的结果。 -V, --version 显示版本信息 -l N, --line-length=N 指定“l”命令的换行期望长度 --posix 关闭所有 GNU 扩展 -r, --regexp-extended 在脚本中使用扩展正则表达式 -s, --separate 将输入文件视为各个独立的文件而不是一个长的连续输入 -u, --unbuffered 从输入文件读取最少的数据,更频繁的刷新输出
动作:
a :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~ c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行! d :删除,因为是删除啊,所以 d 后面通常不接任何咚咚; i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行); p :打印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~ s :取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g 就是啦!
示例:
1、在testfile文件的第四行后添加一行,并将结果输出到标准输出,在命令行提示符下输入如下命令:
[root@mysql linux]# sed -e 4a\newline testfile HELLO LINUX! Linux is a free unix-type opterating system. This is a linux testfile! Linux test newline
原文:https://www.cnblogs.com/jkin/p/10417230.html