前言
对于一个文件,我们介绍过它如何创建(vi、touch),删除(rm),重命名(mv),复制(cp、scp)等等。今天我们来介绍文件操作的另一个行级命令:sed。
sed的使用
1.插入新行
还记得我们在tomcatshell脚本中出现的一句话吗?
例如:sed-i1aJAVA_HOME=/usr/java/jdk1.7.0_79bin/setclasspath.sh
这句话的意思是在setclasspath.sh文件中的第一行后面加入一行,内容“JAVA_Home=/usr/java/jdk.1.7.0_70”。1a说明是在第一行后面新增插入。-i的意思是直接修改而不是输出打印。如果将1a换成$a则说明是在最后一行的下一行增加。
2.删除指定行
在命令行中输入命令:sed2dbin/setclasspath.sh,这句话的意思是删除当前第二行我们刚才新加的JAVA_HOME的内容。其中2d代表第二行delete。
3.行内容替换
在命令行中输入“sed-is/1.7.0_79/1.8.0_/bin/setclasspath”,这句话的意思是将setclasspath中1.7.0_79替换为高版本的1.8.0_。
扩展阅读
Linux下的vi文本编辑器怎么用?
Linux下文件或文件夹的复制(拷贝)
Linux下文件及文件夹的操作与处理