vi vim nano属于屏幕编辑器
sed属于流编辑器
sed基本格式:
sed 范围 命令 文件
用法1 d删除
删除最后一行 使用$d
用法2 用正则表达式来指明范围 必须用//
用法3 用,隔开表示多行
用法4 用/xxx/,/xxx/隔开表示多行
用法5 s替换命令
基本格式 sed '范围s/待替换内容/替换内容/这里可以添加一个标记' 文件
注意:待替换内容部分支持正则,替换内容部分不支持正则!除了\N和&
如果没有指定范围,将会对所有行进行操作。
s///后未指定标记,则只对每一行第一个匹配的关键字进行替换操作。
如果想替换全局或者指定替换,使用标记。如用g标记来替换全局。用数字来指定对第N次匹配的字符串进行操作。
下列操作将第1行的第3个冒号替换为---
又如:
对&的使用示例:(表示引用前面待替换部分)
用法6 对选定部分做多个操作使用{},将操作内容用{}括起来,中间用;隔开。
例:
用法7 sed显示模式空间内容加参数p,不显示未操作到的行用-n
用法8 用y来替换单个字符
注意:单个字符之间有一一对应的关系
sed '1y/abc/xyz/' file
其中:a只能替换x,b只能替换y,c只能替换z,一一对应。
用法9 在指定行后指定内容行使用a\
在指定行前指定内容行使用i\
(可参照iptables -A 和iptables -I来记忆)
用法10 替换更改 c\ (CENTOS6.5 x_64实测c和c\都可以实现,5.8的可能不能用c\)