linux-sed:处理数据
Linux:sed
依照脚本的指令处理、编辑文本文件,
一行一行的更改主要用来自动编辑一个或多个文件、简化对文件的反复操作、编写转换程序等。
语法和选项
语法
1 | sed [-hnV][-e<script>][-f<script文件>][文本文件] |
选项
| 选项 | 含义 |
|---|---|
-e |
以指定的script来处理输入的文本文件。 |
-f |
以指定的script文件来处理输入的文本文件 |
-n |
仅显示script处理后的结果。 |
-i |
直接修改读取的文件内容,而不是由屏幕输出。 |
-r |
sed 的动作支持的是延伸型正则表达式的语法。(默认是基础正则表达式语法) |
动作说明:
| 动作 | 含义 |
|---|---|
a |
新增, a 的后面可以接字串,而这些字串会在新的一行出现(目前的下一行) |
c |
取代, c 的后面可以接字串,这些字串可以取代 n1,n2 之间的行! |
d |
删除,因为是删除啊,所以 d 后面通常不接任何咚咚; |
i |
插入, i 的后面可以接字串,而这些字串会在新的一行出现(目前的上一行); |
p |
打印,亦即将某个选择的数据印出。通常 p 会与参数 sed -n 一起运行 |
s |
取代,可以直接进行取代的工作,通常这个 s 的动作可以搭配正规表示法! |
示例
1 | 删除passwd的4-10行 |

1 | 在第四行后面添加啊啊啊 |

1 | 以2-5取代2-5行 |

1 | 显示2-7行 |

1 | 修改passwd1文件中的root为ROOT,最后的g为全部更改 |
