一, 简介
sed 可依照脚本的指令来处理、编辑文本文件。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 显示版本信息。
动作说明:
a :新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行)~
c :取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行!
d :删除,因为是删除啊,所以 d 后面通常不接任何咚咚;
i :插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行);
p :打印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行~
s :取代,可以直接进行取代的工作哩!通常这个 s 的动作可以搭配正规表示法!例如 1,20s/old/new/g 就是啦!
四,用法
1, 增加一行
sed '$a newline' tt.txt //$表示最后一行, 4a表示第四行后
sed '$i newline' tt.txt //最后一行前增加一行
2,删除几行
sed '2, 3d' tt.txt //伤处2 3 行
3,行为单位替换
sed '2,3c newling' tt.txt //2,3行替换为newline
4, 字符搜索
sed -n /root/p tt.txt //-n 只显示处理后的结果 p代表显示搜索后结果
sed /root/d tt.txt // 搜索到包含root的行,并且删除
sed s/root/user/g tt.txt //搜索root 替换为user, g代表处理一行搜索到的多个字符
5, 直接修改文件内容
sed -i 动作 //直接修改原始文件
sed -i 's/chr/chrome/g' tt.txt //替换原始文件中chr为chrome , g代表处理一行搜索到的多个字符
网友评论