linux shell学习之 sed(基本用法)
一、概述 sed是一种流编辑器,与交互式编辑器不同,流式编辑器会在处理数据之前基于预先提供的一组规则来编辑数据流。 sed可以从标准输入(stdin)获取输入,处理结果从标准输出(stdout)输出。sed会一行一行地读入输入,然后按照预设命令对每行数据进行操作,若输入的是一个文件的内容,sed不会在源文件上修改,而只是在标准输出打印结果。 二、用法初涉 1、替换操作 echo "hello world" | sed 's/hello/HELLO/' 结果:hello world会被替换为HELLO world并从标准输出输出,命令‘s’是替换的意思。 2、多命令操作 使用分号隔开多命令 echo "hello world" | sed 's/hello/HELLO/;s/world/WORLD/' 或者直接换行,每行一个命令 echo "hello world" | sed ' >s/hello/HELLO/ >s/world/WORLD/' 两种操作的结果都是把hello world替换为HELLO WORLD。(我看的参考书里面说多命令要加上-e选项,但我没有加也可以完成操作。) 3、将命令存储在文件中 若有很多的命令,可以预先将命令存放在文件中,每行一个操作命令,在sed中使用-f选项指定从该文件中读取命令即可。 比如cmd.sed文件中存放以下命令 s/hello